WordPress仪表板根据类别组织帖子

时间:2015-11-27 作者:Rain Man

WordPress Dashboard > Posts 我们可以根据标题和日期查看所有帖子(默认情况下,根据最近发布的日期组织)。

是否可以根据类别层次视图组织帖子?所以当我去WordPress Dashboard > Posts 我可以查看类似以下结构的帖子:

- Post title published under x parent category 
  -- Post title child of x
     -- Post title grand child of x
  -- Post title child of x
- Post title published under y parent category
  -- Post title child of y
     -- Post title grand child of y
- Post title published under z parent category 
我知道这种结构似乎有点奇怪,但这将帮助我更快更好地管理不同类别下的不同帖子。

我想知道是否有任何方法(如有必要,使用插件)在仪表板中显示这样的帖子?

1 个回复
SO网友:Hans Spieß

你可以使用restrict_manage_posts 将下拉字段添加到管理栏。然而,这段代码需要改进,因为术语并没有在层次atm中表示。

add_action( \'restrict_manage_posts\', \'my_restrict_manage_posts\' );
function my_restrict_manage_posts() {
    global $typenow;
    $taxonomy = \'your_taxonomy_name\';
    if( $typenow != "page" && $typenow != "post" ){
        $filters = array($taxonomy);
        foreach ($filters as $tax_slug) {
            $tax_obj = get_taxonomy($tax_slug);
            $tax_name = $tax_obj->labels->name;
            $terms = get_terms( $tax_slug, array( \'hide_empty\' => false ) );
            echo "<select name=\'$tax_slug\' id=\'$tax_slug\' class=\'postform\'>";
            echo "<option value=\'\'>Show All $tax_name</option>";
            foreach ( $terms as $term ) { 
                if ( isset( $_GET[ $tax_slug ] ) ) {
                    $get_tax_slug = $_GET[ $tax_slug ];
                } else {
                    $get_tax_slug = false;
                }
                echo \'<option value=\' 
                    . $term->slug, $get_tax_slug == $term->slug ? \' selected="selected"\' : \'\',\'>\' 
                    . ( (int) $term->parent > 0 ? \'- \' : \'\' ) . $term->name . \'</option>\'; 
            }
            echo "</select>";
        }
    }
}
进一步研究:1, 2

相关推荐

是否可以取消对特定帖子类型的POSTS_PER_PAGE限制?

我想知道我是否可以取消特定帖子类型的posts\\u per\\u页面限制。在存档中。php页面我显示不同的帖子类型,对于特定的“出版物”帖子类型,我想显示所有帖子。我如何在不影响传统“post”类型的情况下实现这一点?