Я пытаюсь очистить виджеты панели администратора, чтобы только пользователи уровня администратора могли видеть различные мета-поля, но независимо от того, что я пробовал, виджет « Проверка неработающих ссылок » не исчезнет (см. пример кода ниже).
Я использую WordPress 3.1 MultiSite Network и работаю с этим кодом в папке плагинов MU… не уверен, что это имеет значение… я также пробовал плагин Adminimize, но это тоже не сработало для виджета.
/* Turn off Dashboard Widgets */
if( is_admin() )
add_action('wp_dashboard_setup', 'remove_dashboard_widgets' );
function remove_dashboard_widgets() {
global $wp_meta_boxes;
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
unset($wp_meta_boxes['dashboard']['normal']['core']['blc_dashboard_widget']);
}
Заранее спасибо за любые указания… с уважением,
Чак Скотт.
Проблема, вероятно, просто в том, что ваш код запускается до того, как средство проверки неработающих ссылок добавит мета-поле. Попробуйте изменить строку действия на это:
РЕДАКТИРОВАТЬ
Чтобы быть немного более ясным, конкретная проблема здесь заключается в том, что
add_action()
функция запускается слишком рано по сравнению с функцией add_action средства проверки неработающих ссылок. Есть два способа решить эту проблему: либо запустить код позже (подключив основные функции вашего плагина к функции инициализации и добавив ваши действия и фильтры в эту функцию инициализации), либо увеличить приоритет вашего действия (то, что я предложил выше).Спасибо — полностью сработало… у меня есть только пара пользовательских функций, поэтому установка приоритета 20 сработала… не уверен, что установка слишком высокого приоритета, например, 100 или 1000, влияет на время загрузки, но еще раз, СПАСИБО!
Нет, это никак не повлияет на время загрузки. Это просто становится ключевым числом для массива действий, прикрепленных к
'wp_dashboard_setup'
, поэтому одинаково быстро можно использовать 10, 20, 1000 или 9001. Единственная причина использовать большее число — быть абсолютно уверенным, что ваш обработчик запускается последним на хуке..