您根本不需要使用任何查询,尤其是query_posts
.
相反,请使用pre_get_posts
确保对前端归档的该分类法的任何查询都具有适当的帖子类型的操作:
add_action( \'pre_get_posts\', function( \\WP_Query $q ) {
// we only want the main query for galerie-kategorie archives
if ( ! $q->is_main_query() || !$q->is_tax( \'galerie-kategorie\' ) ) {
return;
}
$q->set( \'post_type\', \'galerie\' );
});
现在,它将确保WP在第一时间抓住您想要的东西。
否则,使用全新的WP_Query
/query_post
您:
查询次数增加了一倍,WP完成了所有这些工作,而你只是把它扔进垃圾桶,让它重新来过!糟糕的可湿性粉剂:(
使您的页面速度加倍,因为它必须两次完成所有操作!现在您必须做大量额外的工作才能使其重新工作,and 您必须编写自定义分页代码才能使链接正常工作,这会给插件和使用的代码带来兼容性问题pre_get_posts
使您的代码变长,使模板变得凌乱pre_get_post
过滤器可以隐藏在functions.php
如果您需要修改ro更改WP从数据库中获取的帖子,请使用
pre_get_posts
. 把它想象成在你把食物送到厨房之前改变你的食物顺序。你最不想做的事就是点食物,让它送到,然后改变主意,再次等待新的食物。