2014-10-27 2 views
0

Я пытаюсь подключить функцию на весь сервер wordpress для пользовательской роли, только когда пользователь обращается к странице редактирования сообщений post.php?post=xxxx0&action=edit, эта функция больше недоступна, печатное сообщение исчезает.Захватить функцию на всем бэкэнде в wordpress

if (is_user_logged_in()) { 
    echo 'here'; 
    function contributor_posts() { 
     echo 'here2'; 
    } 
    add_action('admin_init', 'contributor_posts'); 
} 

echo here - исчезает, - хотя это не идет на другие

echo 'here2 - исчезает также

ответ

4

admin_init действия инициируется, когда вошедшая в доступе пользователя админки, нет необходимости для is_user_logged_in() проверьте здесь.

http://codex.wordpress.org/Plugin_API/Action_Reference/admin_init

редактировать:

Поместите код ниже в functions.php, admin_init действия должен быть срабатывает всегда в каждой части админки. Если это не так, я действительно не знаю, где проблема. Посетите Wordpress Action Reference, чтобы просмотреть список доступных крючков действий и порядок выполнения.

function contributor_posts() { 
    echo 'here'; 
} 
add_action('admin_init', 'contributor_posts'); 
+0

Все еще не работает. Это похоже на 'admin_init', не влияет на post.php. – user3467855

+0

Можете ли вы описать свою проблему немного более четко, потому что, без обид, я не понимаю, что именно не работает и чего вы пытаетесь достичь. – Danijel

+0

Я пытаюсь добавить сообщение «эхо здесь» в бэкэнд, поэтому я создал следующий functon (и удалил то, что вы сказали - is_user ...), но сообщение не напечатано в post.php? Post = 24043 & action = edit' страница/раздел административной области (при редактировании сообщения) - во всех других областях печатается. – user3467855

Смежные вопросы