如何在仪表板中隐藏某些类别

时间:2016-08-03 作者:Riccardo

是否有办法在仪表板中为某些用户/角色隐藏某些类别,以便它们不会出现?它会影响帖子列表中的下拉菜单和帖子页面中的类别复选框选择器:

screenshot #1

screenshot #2

1 个回复
最合适的回答,由SO网友:bynicolas 整理而成

你可以钓到get_terms_args 根据您的用户/角色进行有条件的筛选

沿着这些路线的东西

add_filter( \'get_terms_args\', \'restrict_cat\', 10, 2 );
function restrict_cat( $args, $taxonomies ){

  // Don\'t run if we are not dealing with categories
  if( \'category\' != $taxonomies[0] )
    return $args;

  // The check for the user we want to restrict
  // you could use current_user_can( $capability ) or test for a specific role here
  if( 1 == get_current_user_id() ){
    $args[\'exclude\'] = array( 
        \'cat_id1\',
        \'cat_id2\' 
    );

    return $args;
  }

  return $args;
}
退房https://developer.wordpress.org/reference/functions/get_terms/ 获取可用参数的列表。

相关推荐

为什么NAV_MENU_css_CLASS不能与Apply_Filters一起使用?

我试图将css类添加到导航项中。记录的函数调用WordPress docs 是apply_filters( \'nav_menu_css_class\', string[] $classes, WP_Post $item, stdClass $args, int $depth ) 但我尝试在函数中添加以下内容。“我的孩子”主题中的php不起作用。apply_filters(\'nav_menu_css_class\', [\'nav-item\']); 但在函数中添加以下内容。php工作正