Как ограничить права редактирования таксономии?
Столкнулся с проблемой невозможности редактирования термина таксономии (встроенная категория постов).
Администратор не может редактировать вновь созданные категории (ранее созданные можно)
Не срабатывает edit_term в term.php.
Не понятно почему одни категории можно редактировать, а другие нет
Версия WP 4.8 + Woocommerce 3.1
Посмотреть как создаются кастомные посты, вероятно там и стоят какие то ограничения, либо если там указаны подобные параметры, убрать совсем что бы ВордПресс сам разрулил.
Так же можно воспользоватся плагином User Roles или аналогичным (https://wordpress.org/plugins/user-role-editor/) что бы выставить нужные права если из нет.
Как выяснилось ошибка возникла при обновлении WordPress или Woocommerce.
В таблицах термов появились "мусорные записи". Я их почистил и теперь могу создавать и редактировать новые категории как для продуктов Woocommerce, так и категории WordPress
Но вопрос остался как ограничить права редактирования таксономии для пользователей, которые их не создавали? По типу записей и страниц.
Как описано https://wp-kama.ru/function/current_user_can
if( current_user_can('edit_term', $term_id) ){ echo '<a href="'. get_edit_term_link( $term_id ) .'">Редакт.</a>'; }Где в базе хранится связка, что пользователь может редактировать терм с таким id?
В WP нет привязки к юзеру который создавал термин. ID коздателя нигде не сохраняется, как например с постами... Поэтому право edit_term мало чем отличается от edit_terms оно только првоеряет наличие указанного термина и его таксономии... Если нужно проверять кто создавал термин, то для этого нужно сначала сохранить ID создателя кудато, а потом через хук прицепиться на првоерку этого права и првоерять этот ID...
У меня некорректно отрабатывал шаблон term.php (wp-admin)
if ( ! in_array( $taxonomy, get_taxonomies( array( 'show_ui' => true ) ) ) || ! current_user_can( 'edit_term', $tag->term_id ) ) { wp_die( '<h1>' . __( 'Cheatin’ uh?' ) . '</h1>' . '<p>' . __( 'Sorry, you are not allowed to edit this item.' ) . '</p>', 403 ); }Не могу понять почему созданные ранее категории можно редактировать, а при попытке редактирования вновь созданных, выдается Вордпрессовское предупреждение