Php Wordpress显示内容抓取错误的帖子';它的内容。为什么?

Php Wordpress显示内容抓取错误的帖子';它的内容。为什么?,php,html,wordpress,thumbnails,customizing,Php,Html,Wordpress,Thumbnails,Customizing,我的问题是,我正在显示“事件”类别中的一些帖子。稍后,在同一页上,我想显示一篇来自“spiller”类别的随机文章,这很好。它得到一个随机的帖子,显示标题和缩略图,但当我说显示内容(或摘录)时,它显示了“事件”类别中帖子的所有内容(或摘录)。请帮我解决这个问题 <div class="well span6 Padding10"> <h4 class="titleFont MarginBottom20">KOMMENDE BEGIVENHEDER</h4>

我的问题是,我正在显示“事件”类别中的一些帖子。稍后,在同一页上,我想显示一篇来自“spiller”类别的随机文章,这很好。它得到一个随机的帖子,显示标题和缩略图,但当我说显示内容(或摘录)时,它显示了“事件”类别中帖子的所有内容(或摘录)。请帮我解决这个问题

<div class="well span6 Padding10">
    <h4 class="titleFont MarginBottom20">KOMMENDE BEGIVENHEDER</h4>
    <?php
    $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
    $args  = array(
        'category_name' => 'events', // Change these category SLUGS to suit your use.
        'paged'         => $paged

    );
    query_posts( $args ); ?>
    <ul>
        <?php
        while ( have_posts() ) : the_post(); ?>
            <li>
                <a href="<?php the_permalink(); ?>"><strong><?php the_title(); ?></strong></a>
            </li>
        <?php endwhile; ?>
    </ul>
</div>

<div class="span6 well" style="height: 250px;"><h4 class="titleFont">SPILLER HIGHLIGHT</h4>
    <div class="row-fluid">
        <?php
        $args       = array(
            'numberposts'   => 1,
            'orderby'       => 'rand',
            'category_name' => 'spiller'
        );
        $rand_posts = get_posts( $args );
        foreach ( $rand_posts as $post ) : ?>

            <div class="span5"><?php the_post_thumbnail( array( 150, 150 ) ); ?></div>
            <div class="span6 MarginTop10">
                <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
                <!-- THIS IS WHERE IT MESSES UP: --><?php the_content(); ?>
            </div>
        <?php endforeach; ?>
    </div>
</div>

科门德贝吉文海德酒店
溢出突出显示
首先,您需要避免使用查询帖子。它会影响很多Wordpress全局语言,并改变默认循环,除非这是您的特定意图,否则绝对需要避免,因为它也可能导致性能问题

请考虑用替换查询_帖子

除此之外,您还需要重置postdata,并在下一个循环中设置新的postdata

重置查询:

<?php 
while ( have_posts() ) : the_post(); 
?>
<li>
    <a href="<?php the_permalink(); ?>"><strong><?php the_title(); ?></strong></a>
</li>

<?php endwhile;wp_reset_query(); ?>
重置Postdata:

foreach( $rand_posts as $post ) : setup_postdata($post); ?>
<?php endforeach;wp_reset_postdata(); ?>

为什么要这样做? 无论何时,只要您使用一个前缀为“the”的便利Wordpress函数,该函数都会引用$post Global。query_发布该全局更改(如上所述),如果您计划在单独的循环中引用该全局,则需要能够动态地再次更改它

重置查询只是确保所有全局变量都恢复到Wordpress默认值的良好常规做法。但是setup_postdata($post_object)实际上允许我们在自定义循环中将全局对象更改为当前对象

WP_查询如此有效的原因是,重置查询不再是必要的,因为WP_查询循环定位于该特定对象,并且不会修改全局$WP_查询(这会影响许多其他全局查询)

这里有一些有用的信息,可以更好地为你解释事情


这很有帮助。

首先,你需要避免使用查询帖子。它会影响很多Wordpress全局语言,并改变默认循环,除非这是您的特定意图,否则绝对需要避免,因为它也可能导致性能问题

请考虑用替换查询_帖子

除此之外,您还需要重置postdata,并在下一个循环中设置新的postdata

重置查询:

<?php 
while ( have_posts() ) : the_post(); 
?>
<li>
    <a href="<?php the_permalink(); ?>"><strong><?php the_title(); ?></strong></a>
</li>

<?php endwhile;wp_reset_query(); ?>
重置Postdata:

foreach( $rand_posts as $post ) : setup_postdata($post); ?>
<?php endforeach;wp_reset_postdata(); ?>

为什么要这样做? 无论何时,只要您使用一个前缀为“the”的便利Wordpress函数,该函数都会引用$post Global。query_发布该全局更改(如上所述),如果您计划在单独的循环中引用该全局,则需要能够动态地再次更改它

重置查询只是确保所有全局变量都恢复到Wordpress默认值的良好常规做法。但是setup_postdata($post_object)实际上允许我们在自定义循环中将全局对象更改为当前对象

WP_查询如此有效的原因是,重置查询不再是必要的,因为WP_查询循环定位于该特定对象,并且不会修改全局$WP_查询(这会影响许多其他全局查询)

这里有一些有用的信息,可以更好地为你解释事情


希望这有帮助。

谢谢,非常有描述性,我会仔细阅读你说的话。谢谢,非常有描述性,我会仔细阅读你说的话。