WP Как удалить панель создания меток для ролей

Рейтинг: 1Ответов: 2Опубликовано: 30.01.2023

Подскажите, что необходимо прописать в functions.php, чтобы пользователи, которые не имеют роли администратор, не могли редактировать метки (tags)? Для них элемент отображаться не должен.

введите сюда описание изображения

Нашел вот такой ответ, но это немного не то, поскольку мне полностью необходимо скрыть данную таксономию, не через css

Ответы

▲ 1Принят

Для решения поставленной задачи в functions.php необходимо добавить php код.

add_action( 'init', 'prefix_unregister_tags', 99 );

function prefix_unregister_tags() {

    if ( ! current_user_can( 'manage_options' ) ) {
        unregister_taxonomy_for_object_type( 'post_tag', 'post' );
    }
}

▲ 0

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

function hide_taxonomy_metabox() {
    if ( ! current_user_can( 'manage_options' ) ) {
        remove_meta_box( 'tagsdiv-post_tag', 'post', 'side' );
    }
}
add_action( 'admin_menu', 'hide_taxonomy_metabox' );

Этот код проверяет, не имеет ли текущий пользователь возможности «manage_options» (что эквивалентно роли администратора), и если да, то он удаляет мета-поле «tagsdiv-post_tag», которое представляет собой панель для создания тегов.