目前,WordPress在编辑页面管理区域为具有编辑其他页面功能的用户显示页面方面做得很好。但是,如果用户已经编辑了其他页面,但还没有编写任何页面,WordPress会默认列出删除编辑操作的所有页面。但是,如果用户没有编写任何页面,我希望WordPress不显示任何页面。
我曾尝试在pre\\u get\\u帖子中编写一些代码,但似乎不起作用。
add_action( \'pre_get_posts\', \'wps_admin_exclude_pages\' );
function wps_admin_exclude_pages( $query ) {
if( ! is_admin() )
return $query;
global $pagenow, $current_user;
if( \'edit.php\' == $pagenow && \'page\' == get_query_var( \'post_type\' ) && ! current_user_can( \'edit_others_pages\' ) )
$query->set( \'post_author\', $current_user->ID );
return $query;
}
SO网友:Travis Smith
我使用了错误的query\\u var。它是author 不是post\\u作者。
add_action( \'pre_get_posts\', \'wps_admin_exclude_pages\' );
function wps_admin_exclude_pages( $query ) {
if( ! is_admin() )
return $query;
global $pagenow, $user_ID;
if( \'edit.php\' == $pagenow && \'page\' == get_query_var( \'post_type\' ) && ! current_user_can( \'edit_others_pages\' ) )
$query->set( \'author\', $user_ID );
return $query;
}