基本上,当我在Wordpress Admin中查看“所有帖子”页面时,我想从特定类别中过滤掉所有帖子(不包括它们)以使其不在此处显示。
经过一番搜索,我发现了这个钩子,它可以工作,但可以在所有管理员中使用
function exclude_category_posts( $query ) {
if ( $query->is_main_query() && is_admin()) {
$query->set( 'cat', '-13' );
}
}
add_filter( 'pre_get_posts', 'exclude_category_posts' );
我在WP Admin中创建了另一个菜单,该菜单仅显示该排除类别中的帖子,但是当我应用此功能时,该菜单也没有显示任何内容。不知道这是否可能,但我想我在这里问一些好心人。
答案 0 :(得分:1)
像这样改变。
function exclude_category_posts( $query ) {
if ( $query->is_main_query() && is_admin()) {
if($_REQUEST['page_type']=="single_cat")
$query->set( 'cat', '13' );
else
$query->set( 'cat', '-13' );
}
}
add_filter( 'pre_get_posts', 'exclude_category_posts' );
然后,新菜单的URL可能类似于http://example.com/wp-admin/edit.php?page_type=single_cat
。