Intereting Posts
Скрипт Enqueue на каждой странице, кроме одного Дополнительное поле в wp_post вместо postmeta Удалить настройки управления пользовательским устройством (тип: радиоресурс) с использованием детских тем Теги как выпадающий список с установленными тегами Заменить постоянную таксономию Как перечислить список категорий в поле выбора ACF Pro, чтобы выбрать из Вызов неопределенной функции wp_insert_user () Может ли таблица wp_posts иметь один и тот же пул (post_name) в нескольких статусах (post_status)? Автоматическое обновление таблиц из базы данных Как загрузить старые версии плагинов? Как сохранить обычную мета в одно глобальное значение? Отменить регистрацию по умолчанию wp-admin css только на экране входа? используйте jQuery.load (), чтобы включить php-файл в div, wp_query () является частью файла php Запрос сообщений нескольких условий У меня нет комментариев.php … как настроить мои поля комментариев

Создать роль пользователя, ограниченную конкретным CPT

Я пытаюсь создать роль, которая может создавать и отправлять только CPT. Когда я убираю edit_post из роли, он отменяет возможность создания и редактирования любого из назначенных и зарегистрированных CPT. Я зарегистрировал и назначил функцию edit_CPTs для этой роли. Итак, в основном, у меня есть это:

edit_cpt edit_cpts 

и я забрал

 edit_posts 

Но как только я edit_posts эта роль даже не может видеть CPT в интерфейсе панели мониторинга. Любая помощь будет принята с благодарностью.

Вам необходимо зарегистрировать CPT с вашими специальными возможностями, а затем назначить эту конкретную кепку пользователю.

При передаче аргументов register_post_type установите для параметра 'edit_cpts' новые возможности, поэтому проверка превращается в 'edit_cpts' вместо 'edit_post' .

Установив 'capability_type' => [ 'cpt', 'cpts' ] , 'cpt' будет сопоставлять «post» для стандартных проверок возможностей, поэтому, когда вы обычно проверяете «edit_post», вы теперь будете проверять «edit_cpt» ».

Когда вы полностью удаляете 'edit_posts' примитивов от пользователей / ролей, как вы это делали, вам нужно добавить новый с WP_Role::add_cap() и проверить его с помощью current_user_can( 'edit_cpts' ) .