Как добавить в пункт админ меню wp кружочек с количеством?

Вот собственно о таком красивом кружочке (bubble) рядом с наименованием пункта идет речь.

Админ меню является глобальным массивом в WordPress. Все изменения выполняются с помощью обработки этого массива. Важно, чтобы нужные пункты меню уже были созданы в момент обработки.

Наиболее общий подход — создание зацепки к admin_menu вот так:

Каждый пункт меню в массиве — это в свою очередь массив из 7 элементов. Например:

Ключ (100) — это вес пункта меню. Вы можете самостоятельно поизучать назначение каждого из элементов, а для нашей задачи будут важны только два из них — 0 и 2.

Элемент [0] содержит HTML код метки меню. Сюда добавим HTML код пузырька.

Элемент [2] содержит псевдоним страницы или название php скрипта. Эти данные позволяют WP сформировать url в админ панели, а нам они позволят найти нужную страницу среди всех прочих.

Стили оформления пузырька я заимствовал из верстки : так был оформлен пузырек с кол-вом плагинов, требующих обновления.

Написать комментарий

Мало букафф? Читайте есчо !

Перенос сайта на wordpress

Октябрь 13, 2015 г.

Перенос сайта на другой движок - это уникальная задача, которую нельзя сделать по шаблону. Надо заметить, что перенос сайта на другой движок возникает ...

Читать

Ещё один вариант подключения картинки в редактор таксономии

Июль 7, 2017 г.

Предыдущий вариант встраивания картинки в редактор терминов меня не устраивает в части работы диалога и того, что в базу сохраняется URL, а не ID картинки (thumbnail). Что не так с диалогом? Использован диалог выбора URL картинки встроенного в WP ...

Читать

 

Комментарии к «Как добавить в пункт админ меню wp кружочек с количеством?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Как добавить в пункт админ меню wp кружочек с количеством?”

  1. volod3000:

    Здравствуйте. Материал интересный, спасибо. Есть вопрос:

    Создал пункт меню :
    add_menu_page(‘custom menu title’, ‘Статьи Мероприятия’, ‘manage_options’, ‘edit.php?s&post_status=all&post_type=post&action=-1&m=0&cat=43&filter_action=Фильтр&paged=1&action2=-1’, », ‘dashicons-admin-post’, 9);

    После, чего хотелось бы, что бы возле него показывалась количество статей по этой тематике, делаю так :

    add_action( ‘admin_menu’, ‘add_user_menu_bubble’ );
    function add_user_menu_bubble(){
    global $menu;
    $my_slug_page = ‘edit.php?s&post_status=all&post_type=post&action=-1&m=0&cat=43&filter_action=Фильтр&aged=1&action2=-1’;
    $count = get_category(44)->category_count;
    if( $count ){
    foreach( $menu as $key => $value ){
    if( $menu[$key][2] == ‘m_slug_page’ ){
    $menu[$key][0] .= ‘ ‘ . $count . ‘‘;
    break;
    }
    }
    }
    }

    Но, ничего не происходит. В чем моя ошибка, подскажите пожалуйста ?!

    • Вот это условие скорее всего не работает if( $menu[$key][2] == ‘m_slug_page’ )
      Проверьте, что в вашем конкретном случае находится в global $menu.