Intereting Posts
WordPress фильтрует кепки в wp_title? (UpperCase изменен на верхний регистр) WordPress – администратор управляет сообщениями – несколько фильтров по родительской категории Как получить липкий пост в сыром sql? Потеря резкости в jpg, импортированная как заголовок в двадцать Постоянная ссылка на постоянный архив таксономии показывает ошибку 404 В чем разница между эскизами сообщений и изображениями (если есть)? Как я могу автоматически добавлять дочерние страницы на страницы в меню WP? Изменение ярлыка меню для имени сообщения для пользовательского типа сообщения Помогите написать пользовательскую функцию с переписывающей конечной точкой, которая создает страницу из динамического содержимого Как заставить пользователей заполнять определенное пользовательское поле с помощью WyPiekacz? странное поведение с комментарием как разместить ссылку на первый пост только с помощью плагина wp_schedule_event ежедневно в определенное время Текст со специальным классом как выдержка (или исключить специальный класс) Список всех сообщений в пользовательском типе сообщений с разбивкой на страницы (правильный путь)

Ограничение вызова функции на загрузку страницы, но не вызов ajax

Я использую следующее, чтобы остановить подписчиков (и клиентов) от доступа к области администрирования моего сайта:

/** * Redirect back to homepage and not allow access to WP admin for Subscribers. */ function xcsn_redirect_from_admin(){ if ( ( ! current_user_can( 'edit_posts' ) ) && ( ! is_checkout() ) ){ wp_redirect( site_url() ); exit; } } add_action( 'admin_init', 'xcsn_redirect_from_admin' ); 

Он отлично работает, за исключением того, что он вмешивается в вызов ajax, который делает моя страница оформления (WooCommerce). Зал вызовов и проверка не могут быть выполнены, если у вас нет привилегий «edit-posts», которые, очевидно, побеждают цель.

Мой вопрос: можно ли установить условие, которое будет работать с ранним вызовом, например admin_init , который позволит вызовам ajax пройти, но не позволит admin_init администратора как страницу?

(Извините, если заголовок неясен – трудно вписаться в одно предложение!)