Wordpress:按页面类别过滤帖子不工作?

时间:2014-09-13 15:42:25

标签: php wordpress filter categories posts

超过3天我试图按照我的wordpress主题上的某些类别过滤某些博客页面中的帖子:" Grafika"。例如:我创建一个名为" Friends&#34的博客页面之后,我创建了一个名为" friends"之后我创建了5个帖子,并分配了#34;朋友" 5个帖子的类别。我怎么能在" Friends"页面只显示类别中的帖子"朋友"。目前,该页面显示了所有页面中的所有博文。

我在页面中尝试过很多插件,query_posts,query_args,快捷代码,修改模板。 实际上我只有一个插件,几乎解决了我的问题。它被称为" wp post过滤器"但它不能完全正常工作。这个插件的问题是我是为主页应用过滤器,该过滤器会转到我的所有页面,无论我为其他页面应用不同的过滤器。这是插件链接:here

有人可以给我一个真正有效的解决方案来过滤页面上按类别显示的帖子吗?非常感谢您的阅读!

2 个答案:

答案 0 :(得分:3)

  1. 为您的博客创建新的custom page template
  2. 在此页面http://pastebin.com/bRLhpGzC
  3. 上创建自定义循环
  4. 将页面模板更改为您创建的页面模板http://imgur.com/4VTpyMw

答案 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