У меня на сайте WordPress зарегистрированы разные пользователи с разными ролями.Помимо остальных пользователей, я хочу разрешить рекламодателям (пользователям с ролью рекламодателя - созданная мной специальная роль рекламодателя) размещать свои собственные продукты на моем сайте, а также управлять ими.Но они должны быть ограничены только для управления (создания, редактирования и удаления) своих собственных продуктов, а не других.
До сих пор я пробовал следующий код, но он кажется недействительным.Я уверен, что смогу достичь своей цели с помощью действия pre_get_posts, и следующая функция может помочь мне, но мне нужна помощь в решении проблем с этим кодом.Я не уверен насчет типа продукции.
Вот код, с помощью которого я пытаюсь достичь своей цели:
function show_specific_advertiser_products( $query ) {
$current_user = wp_get_current_user();
if ( is_admin() && in_array ($query->get( 'post_type'), array( 'woocommerce_products' ) ) && !user_can( $current_user, 'administrator' ) ) {
$query->set( 'author__in', $current_user->ID );
}
}
add_action( 'pre_get_posts', 'show_specific_advertiser_products' );
Любая помощь будет высоко оценена.