Flector

Как скрыть «черновики» и записи «на утверждении» от авторов?

Стандартный вывод всех записей

Многим администраторам не нравится, что авторы и редакторы в админке сайта видят все записи, включая черновики и записи на утверждении. Это можно легко исправить, добавив в файл functions.php вашей темы следующий код:

//скрытие черновиков и записей на утверждении start
function wph_hide_draft_pending($views) {
    if (current_user_can('contributor') || current_user_can('author')) { 
        unset($views['all']);
        unset($views['draft']);
        unset($views['pending']);
    }
  return $views;
}
add_filter('views_edit-post', 'wph_hide_draft_pending');
//скрытие черновиков и записей на утверждении end

Можно пойти еще дальше, показывая автору или редактору только его собственные записи. Для этого используйте такой код:

//вывод для авторов и редакторов только их записей start
function wph_hide_draft_pending($views) {
    unset($views['all']);
    unset($views['draft']);
    unset($views['pending']);
    unset($views['publish']);
    return $views;
}
function wph_only_own_posts( $wp_query ) {
    if (strpos($_SERVER['REQUEST_URI'], '/wp-admin/edit.php') !== false) {
        global $current_user;
        $wp_query->set('author', $current_user->id);
    }
}
if (current_user_can('contributor') || current_user_can('author')) {
  add_filter('views_edit-post', 'wph_hide_draft_pending');
  add_filter('parse_query', 'wph_only_own_posts');
}
//вывод для авторов и редакторов только их записей end

При использовании этого кода в меню "Записи" у авторов и редакторов будет только одна вкладка "Мои", где будут выведены только их собственные записи (включая и черновики и записи на утверждении).


Написать комментарий

Для вставки кода воспользуйтесь кнопкой "Код". Используйте предпросмотр!