在FancyBox中加载帖子内容

时间:2012-06-28 作者:jmysona

我有个棘手的问题。我已经创建了一个自定义的帖子类型,我想将其帖子显示在滚动的旋转木马中。旋转木马将仅显示标题、摘录和“阅读更多”按钮。“阅读更多”按钮在FancyBox中显示完整帖子。

以下是我目前的代码:

<ul id="slider2">
<?php
    $args = array( \'post_type\' => \'jobs\', \'posts_per_page\' => 15 , \'order\' => \'ASC\' );
    $loop = new WP_Query( $args ); ?>
    <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
        <li>
            <h4><?php the_title(); ?></h4>
            <?php echo excerpt( \'30\' ); ?>
            <a class="various1" href="#inline1" title="Lorem ipsum dolor sit amet">Read more &rarr;</a>
            <div style="display: none;">
                <div id="inline1" style="width:400px;height:100px;overflow:auto;"><?php the_content(); ?></div>
            </div>
        </li>
    <?php endwhile; wp_reset_query(); ?>
</ul> 
一切都很顺利。Carousel和FancyBox脚本加载正确,但FancyBox显示的内容错误。

任何帮助/建议都会很好。

3 个回复
SO网友:Viktor Hugo Morales

问题是,您正在为循环中的每个DIV声明相同的ID。您需要做的是这样的事情:

    <ul id="slider2">
<?php
    $args = array( \'post_type\' => \'jobs\', \'posts_per_page\' => 15 , \'order\' => \'ASC\' );
    $loop = new WP_Query( $args ); $i = 0; ?>
    <?php while ( $loop->have_posts() ) : $loop->the_post(); $i++; ?>
        <li>
            <h4><?php the_title(); ?></h4>
            <?php echo excerpt( \'30\' ); ?>
            <a class="various1" href="#inline<?php echo $i; ?>" title="Lorem ipsum dolor sit amet">Read more &rarr;</a>
            <div style="display: none;">
                <div id="inline<?php echo $i; ?>" style="width:400px;height:100px;overflow:auto;"><?php the_content(); ?></div>
            </div>
        </li>
    <?php endwhile; wp_reset_query(); ?>
</ul> 
我已经改变了inline1 具有inline[?php echo $i; ?].

希望这能解决你的问题。

SO网友:Dhanuka Nuwan

希望这会有所帮助

<ul id="slider2">  
<?php
$args = array( \'post_type\' => \'jobs\', \'posts_per_page\' => 15 , \'order\' => \'ASC\' );
$loop = new WP_Query( $args ); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); global $post; ?>
    <li>
        <h4><?php the_title(); ?></h4>
        <?php echo excerpt( \'30\' ); ?>
        <a class="various1 fancybox" href="#inline<?php echo $post->ID; ?>" title="Lorem ipsum dolor sit amet">Read more &rarr;</a>
        <div style="display: none;">
            <div id="inline<?php echo $post->ID;  ?>" style="width:400px;height:100px;overflow:auto;"><?php the_content(); ?></div>
        </div>
    </li>
<?php endwhile; wp_reset_query(); ?>

SO网友:Evan Mattson

如果您的fancybox内容不是您想要的,那么问题很可能与您的jquery或插件使用有关。

如果您使用的是“fancybox for wordpress”插件,根据我的经验,它在默认情况下不能很好地处理内联内容。您可能需要在插件中定义一个额外的调用。

看起来您正在fancybox上镜像内联用法。net站点
您应该尝试实现对fancybox的类似调用,该调用在此处使用:

$("#various1").fancybox({
    \'titlePosition\'     : \'inside\',
    \'transitionIn\'      : \'none\',
    \'transitionOut\'     : \'none\'
});`
以下是此html示例的调用:

<a id="various1" href="#inline1" title="Lorem ipsum dolor sit amet">Inline - auto detect width / height</a>
在哪里various1 是链接的id,fancybox显示与链接中href属性id匹配的元素的内容(在本例中href="#inline1").

结束

相关推荐

Query_Posts分页将始终显示相同的内容

有人知道为什么我的分页不起作用吗?我可以显示“上一页”,但当导航到“第2页”时,内容将与“第1页”上的内容保持一致。<?php /* Template Name: Generic Trips Template */ ?> <?php get_header(); ?> <?php get_template_part( \"beforeloop\", \"page\" ) ?>