Title: Список рубрик в разделе меню
Last modified: 08.11.2013

---

# Список рубрик в разделе меню

 *  Решено [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/)
 * Добрый день.
    На одном из сайтов создано большое древо категорий разного уровня
   вложенности.
 * При создании меню в админ панели нужно сохранить иерархию категорий при их выборе
   в левом окне блока Рубрики.
 * Постраничная навигация рубрик рушит все древо, это очень не удобно.
 * Есть ли возможность убрать постраничную навигацию в блоке accordion-section на
   странице создания меню?
 * _Для наглядности структура меню:_
 * > Название марки авто
   >  + Запчасти + Аксессуары Название марки авто 2 + Запчасти
   > + Аксессуары
 * т.к. древо разрушено, нет возможности определить какая категория с одним и тем
   же названием имеет родителя марки авто.
 * Спасибо

Просмотр 15 ответов — с 1 по 15 (всего 18)

1 [2](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/page/2/?output_format=md)
[→](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/page/2/?output_format=md)

 *  Автор [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120521)
 * Нашел функцию wp_nav_menu_item_taxonomy_meta_box в файле /wp-admin/includes/nav-
   menu.php строка 837
 * > $per_page = 50;
 * отвечает за количество отображаемых элементов.
 * Возможно ли подменить количество не вмешиваясь в этот файл?
 *  [SeVlad](https://ru.wordpress.org/support/users/sevlad/)
 * (@sevlad)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120535)
 * > Постраничная навигация рубрик рушит все древо, это очень не удобно.
 * Вы имеете ввиду в админке?
    Почему рушит? Там всё иерархически. А кол-во отображаемых
   постов настраивается вверху, в настройках экрана.
 * А возможно Вам будет удобен какой-нибудь плагин, для удобного управления постами\
   страницами. Их существует много самых разных с разными возможностями.
 *  Автор [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120542)
 * В админке на странице Внешний вид => Меню (/wp-admin/nav-menus.php)
 * На этой странице в настройках экрана нет опции для изменения количества отображаемых
   категорий в списке слева.
 * Думаю, что решения плагинами нет, т.к. в функции wp_nav_menu_item_taxonomy_meta_box
   переменная $per_page = 50; задана цифрой а не переменной.
 * Вариантов 3:
    1. Заменить функцию wp_nav_menu_item_taxonomy_meta_box на свою (
   что не есть хорошо). 2. Заменить в функции wp_nav_menu_item_taxonomy_meta_box
   значение переменной на требуемое. Например: 500 (слетит при обновлении WP) 3.
   Надеяться, что опция изменения отображения количества рубрик на странице создания
   меню будет добавлена в следующих версиях.
 *  [SeVlad](https://ru.wordpress.org/support/users/sevlad/)
 * (@sevlad)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120546)
 * > В админке на странице Внешний вид => Меню (/wp-admin/nav-menus.php)
 * Ааа. я значит неправильно понял (я подумал речь об иерархии на wp-admin/edit.
   php)
 * > Вариантов 3:
 * 4: создать отдельное меню для каждой рубрики.
    5: использовать не меню (nav-menu),
   а список (wp_list_categories) 6: использовать не родное меню (nav-menu), а какой-
   нить плагин для создания меню.
 * Хотя наверняка можно изменить кол-во выводимых пунктов, но я не подскажу готового
   решения, только напомню, что [любую функцию ВП можно переопределить](http://codex.wordpress.org/%D0%A7%D0%90%D0%92%D0%9E/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D1%8B%D1%85_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9)
   в functions.php активной темы.
 *  [suspended](https://ru.wordpress.org/support/users/wikicms/)
 * (@wikicms)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120547)
 * Вариант 4
    4. Изучить код, найти удачный хук[1] и изменить значение на свое.
 * И лесом обновления, полное переписывание функций и ожидание следующей версии 
   🙂
 * —
    [1] Предположу, что этот можно применить (1291 строка) [http://core.trac.wordpress.org/browser/tags/3.7.1/src/wp-includes/taxonomy.php#L1254](http://core.trac.wordpress.org/browser/tags/3.7.1/src/wp-includes/taxonomy.php#L1254)
 *  Автор [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120548)
 * Спасибо, но это не решает проблемы описанной выше.
 * Да, более правильным будет переопределить функцию. Но при каждом обновлении WP
   придется следить за тем, не изменилась ли функция. В случаи ее изменения менять
   свою функцию которой я заменил стандартную. А если сайтов 10-20. Менять везде
   функцию вручную? 🙂 нет спасибо.
 * Проблема не в выводе меню или его построении. А в неудобстве добавлять рубрики
   в меню. т.к. постраничная навигация дробит иерархию.
 *  [suspended](https://ru.wordpress.org/support/users/wikicms/)
 * (@wikicms)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120550)
 * > Спасибо, но это не решает проблемы описанной выше.
 *  В смысле не решает? Пробовали уже?
 *  Автор [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120551)
 * В красном круге то как есть, в зеленом после изменения значения переменной $per_page
   
   [http://habrastorage.org/storage3/71b/75a/664/71b75a6649a5a3d3ef2d40ef0f235346.jpg](http://habrastorage.org/storage3/71b/75a/664/71b75a6649a5a3d3ef2d40ef0f235346.jpg)
 * **wikicms**, не успел вам ответит 🙂
    get_terms — Получает все элементы (термины)
   указанной таксономии. Предложенная вами функция никак не может повлиять на результат
   работы функции которая выводит список категорий в разделе создания меню.
 *  [suspended](https://ru.wordpress.org/support/users/wikicms/)
 * (@wikicms)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120553)
 * Ну вот, я же говорил, что фильтр сработает.. Поздравляю!
 *  [SeVlad](https://ru.wordpress.org/support/users/sevlad/)
 * (@sevlad)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120554)
 * > В красном круге то как есть, в зеленом после изменения значения переменной 
   > $per_page
 * Так вот Вы о чём!
    Так как по мне скролить и выискивать гораздо сложнее, чем 
   использовать поиск — он же сразу показывает нужное.
 * Да и вообще — Вы меню каждый день исправляете, что это доставляет неудобства?
   Что-то мне подсказывает — не там Вы проблему нашли 🙂
 *  [suspended](https://ru.wordpress.org/support/users/wikicms/)
 * (@wikicms)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120555)
 * > Предложенная вами функция никак не может повлиять на результат работы функции
   > которая выводит список категорий в разделе создания меню.
 *  Ну раз вы так уверены, тогда я пас 😉
 *  Автор [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * (@zetrider)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120556)
 * **SeVlad**, Если бы сайтом пользовался я 🙂 Структура сайта построена таким образом,
   что для каждой марки автомобиля есть одинаково названные рубрики. Поиск не поможет.
 * **wikicms**, возможно я чего то не знаю, не могли бы вы более подробно описать,
   как можно повлиять на переменную $per_page = 50; в массиве $args ?
 * Код начала функции которая выводит список категорий на странице создания меню:
 *     ```
       function wp_nav_menu_item_taxonomy_meta_box( $object, $taxonomy ) {
       	global $nav_menu_selected_id;
       	$taxonomy_name = $taxonomy['args']->name;
   
       	// paginate browsing for large numbers of objects
       	$per_page = 50;
       	$pagenum = isset( $_REQUEST[$taxonomy_name . '-tab'] ) && isset( $_REQUEST['paged'] ) ? absint( $_REQUEST['paged'] ) : 1;
       	$offset = 0 < $pagenum ? $per_page * ( $pagenum - 1 ) : 0;
   
       	$args = array(
       		'child_of' => 0,
       		'exclude' => '',
       		'hide_empty' => false,
       		'hierarchical' => 1,
       		'include' => '',
       		'number' => $per_page,
       		'offset' => $offset,
       		'order' => 'ASC',
       		'orderby' => 'name',
       		'pad_counts' => false,
       	);
   
       	$terms = get_terms( $taxonomy_name, $args );
       ```
   
 *  [suspended](https://ru.wordpress.org/support/users/wikicms/)
 * (@wikicms)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120559)
 * > как можно повлиять на переменную $per_page = 50; в массиве $args ?
 *  Обратить внимание на ссылку, которую я дал. Надеюсь, сможете найти доки по использованию
   фильтров. Там просто, как дважды два.
 *  Модератор [Юрій](https://ru.wordpress.org/support/users/yube/)
 * (@yube)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120560)
 * > как можно повлиять на переменную $per_page = 50; в массиве $args ?
 * Фильтром на хуке ‘get_terms_args’?
 *  [SeVlad](https://ru.wordpress.org/support/users/sevlad/)
 * (@sevlad)
 * [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/#post-120561)
 * > Структура сайта построена таким образом
 * Я о том же — неправильная структура.
 * Но даже если отбросить этот факт (переделывать, как я понимаю, никто не будет),
   то всё равно
    а) «меню» (на сайте) можно переделать таким образом, что бы не 
   возникала надобность его регулярно исправить. б) скролить и выискивать нужное
   в таком маленьком окошке — это же полнейшая жуть.
 * Отсюда — либо переделать меню, либо улучшить визуализации выдачи при поиске (
   чтобы показывалась иерархия найденного). Возможно для последнего есть плагины,
   но мне не попадались.
 * Или, что вообще легко решает множество проблем:
 * > 6: использовать не родное меню (nav-menu), а какой-нить плагин для создания
   > меню.
 * Зы. сорри что несколько не по теме, но расценивайте это как попытку помочь искоренить
   причину протечки, а не совет «чем залатать дырки».

Просмотр 15 ответов — с 1 по 15 (всего 18)

1 [2](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/page/2/?output_format=md)
[→](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/page/2/?output_format=md)

 Тема «Список рубрик в разделе меню» закрыта для новых ответов.

## Метки

 * [category](https://ru.wordpress.org/support/topic-tag/category/)
 * [checklist](https://ru.wordpress.org/support/topic-tag/checklist/)
 * [Menu](https://ru.wordpress.org/support/topic-tag/menu/)

 * Форум: [Проблемы и решения](https://ru.wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 18 ответов
 * 4 участника
 * Последний ответ: [Timur Kalimullin](https://ru.wordpress.org/support/users/zetrider/)
 * Последняя активность: [12 лет, 11 месяцев назад](https://ru.wordpress.org/support/topic/%d0%a1%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%80%d1%83%d0%b1%d1%80%d0%b8%d0%ba-%d0%b2-%d1%80%d0%b0%d0%b7%d0%b4%d0%b5%d0%bb%d0%b5-%d0%bc%d0%b5%d0%bd%d1%8e/page/2/#post-120566)
 * Статус: решённая

## Темы

### Самые популярные темы

### Темы без ответов

### Без вопроса

### Решённые

### Нерешённые

### Все темы
