超过3天我试图按照我的wordpress主题上的某些类别过滤某些博客页面中的帖子:" Grafika"。例如:我创建一个名为" Friends&#34的博客页面之后,我创建了一个名为" friends"之后我创建了5个帖子,并分配了#34;朋友" 5个帖子的类别。我怎么能在" Friends"页面只显示类别中的帖子"朋友"。目前,该页面显示了所有页面中的所有博文。
我在页面中尝试过很多插件,query_posts,query_args,快捷代码,修改模板。 实际上我只有一个插件,几乎解决了我的问题。它被称为" wp post过滤器"但它不能完全正常工作。这个插件的问题是我是为主页应用过滤器,该过滤器会转到我的所有页面,无论我为其他页面应用不同的过滤器。这是插件链接:here
有人可以给我一个真正有效的解决方案来过滤页面上按类别显示的帖子吗?非常感谢您的阅读!
答案 0 :(得分:3)
答案 1 :(得分:1)
在主题的functions.php
文件中,我们可以使用pre_get_posts
函数在页面加载之前更改查询。
function my_friends_category( $query ) {
if ( $query->is_page('friends')):
$query->set( 'cat', 'friends' );
endif;
}
add_action( 'pre_get_posts', 'my_friends_category' );
假设您的网页名称为friends
,否则请将其替换为网页的id
。