#wordpress #plugins #menu
#wordpress #Плагины #меню
Вопрос:
Я пытался добавить определенный класс в раздел администратора. Я создал новую страницу меню верхнего уровня, и теперь я хочу добавить определенный класс в это меню верхнего уровня и его пункты подменю.
Что я пробовал до сих пор, так это то, что я использовал WP_Screen
для получения данных текущего экрана.
Если я проверю страницу подменю, и я это сделал var_dump(get_current_screen())
. Он показывает каждую деталь.
Но теперь дело в том, что если я использую get_current_screen()
with admin_body_class
почему это не работает.
Насколько я знаю, перехват вызывается раньше, чем загружаются сведения о странице подменю.
Теперь я хочу спросить, как можно проверить, имеет ли подменю определенную родительскую базу,
Вот код, который я пробовал до сих пор.
add_filter('admin_body_class', 'tw_admin_body_class');
function tw_admin_body_class( $classes ) {
$screen = get_current_screen();
var_dump($screen);
if ( $screen->parent_base == 'tw-top' ) {
return $classes . ' raashid';
}
}
Но parent_base
установлено значение null
. Есть идеи, как добавить класс на страницы подменю, если он находится в определенном меню уровня yop.
Ответ №1:
Это сработало с помощью параметра Id. Вот рабочий вариант.
add_filter( 'admin_body_class', 'my_admin_body_class' );
function my_admin_body_class( $classes ) {
$screen = get_current_screen();
$classes .= ' raashid';
if ( get_plugin_page_hook( 'tw-top', '' ) === $screen->id ) {
return $classes;
}
}