2010-04-23 2 views
0

У меня есть два события в моем плагине. Один запускается для интерфейса. Другой запускается для панели администратора. Оба вызова одной и той же функции в одной конкретной ситуации, и это выводит материал на экран. Как сделать так, чтобы функция была умной, вызывала что-то в WordPress и обнаруживала, загружается ли она в интерфейсе или панели администратора? Я не хочу, чтобы он выводил информацию на экран в интерфейсе, но хочу, чтобы это было сделано на панели администратора. Прямо сейчас, это отражается на обоих, чего я не хочу.Как определить панель администратора WordPress в моем плагине?

фон

Для переднего конца (сторона сайта, что посетитель видит), я пересекающей «Wp» событие и проверка на:

(is_single() || is_page() || is_home() || is_archive() || is_category() || is_tag()) 

Для админа панели, я перехватываю событие admin_menu. Я попытался перехватить вышеперечисленное _ *(), но, похоже, как-то ответил TRUE или что-то еще, не давая мне разницы между интерфейсом и панелью администратора.

ответ

4

Используйте is_admin() для обнаружения, когда отображаются панели управления или панели администрирования.

Более условные теги описываемая здесь: http://codex.wordpress.org/Conditional_Tags

+0

Я понимаю, что is_admin() также возвращает true, если пользователь запускает внешние вызовы Ajax? есть ли более точный способ отличить интерфейс от внутренних вызовов? – zdenekca

1

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