Fancybox链接仅打开第一条Wordpress帖子-每次单击都需要打开不同的帖子

问题描述 投票:1回答:2

我正在一个网站上,该网站在书籍目录页面上有一个立即购买选项(每本书都是自定义帖子)。除了带有链接等的自定义字段外,这些书还由管理员添加为自定义帖子。当用户单击“立即购买”按钮时,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 &gt;</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,但我认为其余部分与我的问题无关。预先感谢。

php jquery wordpress modal-dialog fancybox
2个回答
2
投票

嗯,我能够自己解决这个问题,它比我想象的要简单得多。

我只是将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。


0
投票

只想感谢您发布此答案,它帮助我完成了一个类似的项目!

© www.soinside.com 2019 - 2024. All rights reserved.