it-swarm.com.ru

Как проверить, что в данный момент в Wordpress Admin?

Я создаю свой первый плагин и у меня есть одна функция, которая контролирует вывод. Эта функция имеет различный вывод в зависимости от того, просматривается ли она из админки WordPress и внешнего интерфейса. Есть ли способ легко проверить, запускается ли моя функция изнутри admin против внешнего интерфейса?

Я попытался условно проверить строку запроса на соответствие имени моего «плагина» страницы плагина, но на некоторых серверах/установках он не работает.

Спасибо

31
Matt

Да, это было слишком очевидно. По какой-то причине я подумал, что это связано с правами администратора .if(is_admin()) { ...output my admin stuff....}

http://codex.wordpress.org/Function_Reference/is_admin

56
Matt

Если вы хотите узнать, является ли текущий пользователь IS ADMIN, то вам следует использовать это:

   $is_admin = current_user_can( 'manage_options' );

Приведенный выше ответ меня сбил с толку, поэтому небольшая заметка, чтобы другие не совершили ту же ошибку.

19
psycho brm

Обратите внимание, что is_admin() работает только в бэкэнде. Для любой части плагина, которая отображается на общедоступном веб-сайте, вам нужно использовать current_user_can().

if ( current_user_can( 'administrator' ) ) {
  // your code goes here
}
12
Charles Jaimet

Смотрите is_admin_request () для рабочего решения.

0
theRunner