Как запретить просмотр чужих записей в определенных типах записей wordpress

Добрый день, ситуация такая, есть несколько типов записей на сайте wordpress, необходимо сделать так, чтобы в определенных типах записей авторы видели только свои записи. Есть решение для всех типов записей

function posts_for_current_author($query) {

global $pagenow;

if( ‘edit.php’ != $pagenow || !$query->is_admin )
return $query;

if( !current_user_can( ‘edit_others_posts’ ) ) {
global $user_ID;
$query->set(‘author’, $user_ID );
}
return $query;
}

add_filter(‘pre_get_posts’, ‘posts_for_current_author’);

 

вот только не получается задать условие для этой функции для определенных типов записей, не могли бы помочь…

Добавить Комментарий

в общем сделал так

function show_only_user_posts( $wp_query ) {
if ( strpos( $_SERVER[ ‘REQUEST_URI’ ], ‘/wp-admin/edit.php?post_type=mbo’ ) !== false ) {
if ( !current_user_can( ‘administrator’ ) ) {
$wp_query->set( ‘author’, get_current_user_id() );
}

}
}

add_filter(‘parse_query’, ‘show_only_user_posts’ );

задал проверку по строке тип записи, в принципе решил задачу

Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.