按排除类别过滤帖子

时间:2017-03-08 作者:Joseph Butler

我以管理员身份登录

我在Posts仪表板上

我有分配给多个类别的帖子,我有只分配给一个类别的帖子。

我想显示只分配给一个类别的帖子。

如果一篇文章被分配到多个类别,则不应显示该文章。

结果应该是分配给一个类别的帖子,当我编辑这些帖子并将其分配给多个类别时,单击“保存”后,帖子将不会显示在列表中。

如何做到这一点?

1 个回复
SO网友:ricotheque

你可以在load-edit.php 修改wp admin如何列出页面的操作。将此添加到您的函数中。php:

<?php

add_action( \'load-edit.php\', \'namespace_modify_admin_list\' );

function namespace_modify_admin_list() {
    global $typenow;

    if ( \'post\' !== $typenow )
        return;

    add_action( \'pre_get_posts\', \'namespace_modify_admin_list_posts\' );
}

function namespace_modify_admin_list_posts( $query ) {
    /**
     * Modify query here to change how posts are listed, using
     * the set method of the query object.
     *
     * Example:
     * $query->set( \'posts_per_page\', 10 );
     */
}

?>
请问您为什么要隐藏包含多个类别的帖子?这是出于访问控制还是过滤目的?

相关推荐

GET_POSTS在页面模板中工作,但不在短码中工作

我正在尝试编写一个短代码,其中包括“get\\u posts”,以便获取博客帖子数据,然后在页面上显示最近的3篇文章。此代码在模板中工作。然而,当我将其放入输出缓冲区(ob\\u start)内的短代码中时,它无法检索帖子。相反,它会获取当前页面本身并循环浏览该页面(在本例中为主页)。你知道我怎样才能让它按照最初的意图在帖子中循环吗?以下是在模板中工作的代码:<?php $lastposts = get_posts( array(\'posts_per_page\' => 3) );?>