2014-10-28 6 views
0

Я пытаюсь удалить некоторые страницы меню на основе роли пользователя, но когда я добавляю функцию внутри if condition, она ничего не делает.remove_menu_page() не получает инициализацию внутри условия if

function contributor_posts_action() { 
    if ($role == 'contributor_posts') { // contributor_posts - custom role 
    // echo 'here'; for testing purposes and WORKS, so it goes under the if condition 
    add_action('admin_menu', 'remove_menus_contrib'); 
    function remove_menus_contrib(){ 
     remove_menu_page('edit-comments.php');  
     remove_menu_page('tools.php');     
     remove_menu_page('edit.php?post_type=directory');   
     remove_menu_page('edit.php?post_type=city'); 
    } // this function doesn't get hooked 

    add_action('admin_bar_menu', 'remove_admin_bar_items', 999); 
    function remove_admin_bar_items($wp_admin_bar) { 
     $wp_admin_bar->remove_node('new-directory'); 
     $wp_admin_bar->remove_node('new-city'); 
    }// this one works properly. It's for removing for admin bar. 
    } 
} 
add_action('admin_init', 'contributor_posts_action'); 
+0

Вы никогда не называете функции, чтобы они не выполнялись! – Rizier123

+0

@ Rizier123 Они вызываются с помощью add_action, другой работает другим. Также, если я добавлю функцию remove-menus_contrib() вне условия 'if 'вместе с add_action, который она имеет в настоящее время, она работает. – user3467855

+0

Где находится эта '$ role'? Выполните эти функции из обратного вызова 'admin_init', оставив только' add_action'. – brasofilo

ответ

1

Попробуйте потянув remove_menus_contrib() и функцию add_action('admin_menu', 'remove_menus_contrib') крюк из вашей contributor_posts_action() функции.

Некоторые крючки Wordpress не будут работать внутри других (настраиваемых) функций.

+0

все еще не работает, admin_bar_menu также предназначен только для панели администратора – user3467855

+0

OK, вы уверены, что Wordpress вызывает admin_menu? –

+0

Я знаю, что admin_menu - это крючок, поэтому его следует называть как остальные крючки. – user3467855

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