我想在dashboard all posts部分只显示作者自己的帖子。到目前为止,它显示了所有内容。
我找到一些代码here 这是由@T31编写的,以确保其正常工作。
function posts_for_current_author($query) {
global $user_level;
if($query->is_admin && $user_level < 5) {
global $user_ID;
$query->set(\'author\', $user_ID);
unset($user_ID);
}
unset($user_level);
return $query;
}
add_filter(\'pre_get_posts\', \'posts_for_current_author\');
但不推荐使用user\\u级别。那么,任何人都可以修改新版本的代码吗?谢谢
最合适的回答,由SO网友:Kailey Lampert 整理而成
下面是我在管理中只显示当前用户的帖子
add_action( \'load-edit.php\', \'posts_for_current_author\' );
function posts_for_current_author() {
global $user_ID;
/*if current user is an \'administrator\' do nothing*/
//if ( current_user_can( \'add_users\' ) ) return;
/*if current user is an \'administrator\' or \'editor\' do nothing*/
if ( current_user_can( \'edit_others_pages\' ) ) return;
if ( ! isset( $_GET[\'author\'] ) ) {
wp_redirect( add_query_arg( \'author\', $user_ID ) );
exit;
}
}
如果该限制只适用于特定角色的用户,则可以很容易地对其进行编辑。