我正试图从我的头版十二个主题中排除所有粘性帖子。我尝试了以下几点。我正在对儿童主题进行所有更改。
从内容中删除以下代码。php
<?php if ( is_sticky() && is_home() && ! is_paged() ) : ?>
<div class="featured-post">
<?php _e( \'Featured post\', \'twentytwelve\' ); ?>
</div>
<?php endif; ?>
向索引中添加以下代码。循环之前的php(这删除了粘性帖子,但破坏了分页)
<?php query_posts( array( \'post__not_in\' => get_option( \'sticky_posts\' ) ) ); ?>
这是索引中的循环。php(相当于标准index.php for tween-12。
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( \'content\', get_post_format() ); ?>
<?php endwhile; ?>
<?php twentytwelve_content_nav( \'nav-below\' ); ?>
请有人告诉我,我应该把什么放在这个循环中,以避免在索引上显示任何有粘性的帖子。php?
感谢您抽出时间。
最合适的回答,由SO网友:s_ha_dum 整理而成
不使用query_posts
. 在上使用筛选器pre_get_posts
.
function no_front_sticky_wpse_98680($qry) {
if (is_front_page()) {
$qry->set(\'post__not_in\',get_option( \'sticky_posts\' ));
}
}
add_action(\'pre_get_posts\',\'no_front_sticky_wpse_98680\');
通过运行
query_posts
您对主查询进行了重击,用另一个查询重写了它。这就是为什么要破坏分页。新查询与主查询不同步。