我只想在添加新/编辑帖子区域对投稿人用户隐藏类别“news”、“blog”、“main”,而不是“bloggers”。
我找到了这个密码here 可用于成员插件:
add_filter(\'list_terms_exclusions\', \'yoursite_list_terms_exclusions\', 10, 2);
function yoursite_list_terms_exclusions( $exclusions, $args ) {
global $pagenow;
if (in_array($pagenow,array(\'post.php\',\'post-new.php\')) &&
!current_user_can(\'see_special_cats\')) {
$exclusions = " {$exclusions} AND t.slug NOT IN (\'slug-one\',\'slug-two\')";
}
return $exclusions;
}
他们说,这很有效,但我不知道如何定制它。只需添加函数。php不工作。
SO网友:janh
你必须改变see_special_cats
适合的东西。由于要排除贡献者,但允许所有其他贡献者,因此可以使用publish_posts
(参见the codex for all capabilities of contributors).
您的代码应该是
add_filter(\'list_terms_exclusions\', \'yoursite_list_terms_exclusions\', 10, 2);
function yoursite_list_terms_exclusions( $exclusions, $args ) {
global $pagenow;
if (in_array($pagenow,array(\'post.php\',\'post-new.php\')) &&
!current_user_can(\'publish_posts\')) {
$exclusions = " {$exclusions} AND t.slug NOT IN (\'news\', \'blog\', \'main\')";
}
return $exclusions;
}
请记住,您可能需要调整段塞,我刚才假设
news
,
blog
和
main
.