我正在一个网站上,该网站在书籍目录页面上有一个立即购买选项(每本书都是自定义帖子)。除了带有链接等的自定义字段外,这些书还由管理员添加为自定义帖子。当用户单击“立即购买”按钮时,Fancybox会弹出一个窗口,其中有一个可以在何处购买书的窗口。我遇到的问题是每个弹出窗口只是数组中第一篇文章的内容。我对jQuery和PHP非常陌生。我假设我必须创建某种计数器,但是我不知道该怎么做。但基本上,每个“立即购买”按钮都必须打开单独的自定义帖子。
相关代码:
js:
<script type="text/javascript">
$(document).ready(function() {
$(".fancybox").fancybox(); });
</script>
html:
<?php else: ?>
<li>
<div class="thumbnail"><?php the_post_thumbnail(); ?></div>
<div class="content">
<h2><?php the_title(); ?></h2>
<p><?php echo substr(get_the_content(), 0, 250); ?></i>...
<a class="read-more" href="<?php echo get_permalink(); ?>">Read More ></a></p>
<a class="buy-now fancybox" href="#buy-now-popup2">
<img class="buy-now-img2" src="http://www3.patriciacornwell.com/wordpress/wp-content/uploads/buy-now.png">
</a>
</div>
</li>
<div id="buy-now-popup2">
<h2>Choose a Format</h2>
<ul>
<li>
<div class="thumb"><img src="http://www3.patriciacornwell.com/wordpress/wp-content/uploads/paperback.png"></div>
<h4>Paper Back</h4>
<div class="stores">
<?php $pbamazon = get_post_meta($post->ID, 'paperback-amazon', true); ?>
<?php $pbbn = get_post_meta($post->ID, 'paperback-barnesnoble', true); ?>
<?php $pbib = get_post_meta($post->ID, 'paperback-indiebound', true); ?>
<?php $pbpenguin = get_post_meta($post->ID, 'paperback-penguin', true); ?>
</div>
</div>
这不是整个buy-now-popup2 div,但我认为其余部分与我的问题无关。预先感谢。
嗯,我能够自己解决这个问题,它比我想象的要简单得多。
我只是将fancybox href属性更改为:
<a class="buy-now fancybox" href="#buy-now-popup<?php the_ID(); ?>">
以及弹出的ID为:
<div id="buy-now-popup<?php the_ID(); ?>" class="buy-now-catalog">
以便Wordpress将为每个链接自动生成新的div。
只想感谢您发布此答案,它帮助我完成了一个类似的项目!