WordPress 3.7更新后QUERY_POST不起作用

时间:2013-10-29 作者:user1001176

我最近更新到wordpress 3.7,我的帖子页面突然停止了工作。它不显示任何内容,并打开一个空白页。该页面上有小代码,它停止了工作。它正在使用query_posts 但是现在出现了一个银行页面。

代码

    <? query_posts (\'cat=-103&posts_per_page=1\') ?>

 <? while (have_posts ()) { the_post ();  ?>

    <div class="reu-sec">

        <h2><a href="<? the_permalink() ?>"><? the_title (); ?><span class="sbttlmn"> &nbsp <?= get_post_meta (get_the_ID(), \'sub-title\', true); ?></span></a></h2>

        <div class="desc">

            <? //the_content (\'[More]\'); ?>

            <div class="reu-prev1"><a href="<? the_permalink() ?>"><img src="<?= get_post_meta (get_the_ID(), \'image\', true); ?>"/></a></div>

            <div class="reu-prev2"><a href="<? the_permalink() ?>"><img src="<?= get_post_meta (get_the_ID(), \'image2\', true); ?>"/></a></div>

            <div class="reu-prev3"><a href="<? the_permalink() ?>"><img src="<?= get_post_meta (get_the_ID(), \'image3\', true); ?>"/></a></div>

        </div>

        <div style="clear: both"></div>

    </div>

<?php }  ?>

1 个回复
SO网友:Chip Bennett

摆脱query_posts() 在模板文件中。相反,您需要通过pre_get_posts.

以下函数将排除指定的类别,并更改主博客帖子索引的每页帖子:

function wpse102566_pre_get_posts( $query ) {
    if ( is_home() && $query->is_main_query() ) {
        $query->set( \'category__not_in\', array( \'103\' ) );
        $query->set( \'posts_per_page\', 1 );
    }
}
add_action( \'pre_get_posts\', \'wpse102566_pre_get_posts\' );

结束

相关推荐