Вопрос меню роутера - PullRequest
       8

Вопрос меню роутера

1 голос
/ 11 августа 2010

Мой вопрос связан с проблемой производительности, с которой я столкнулся при использовании модуля контекста с большим количеством меню.Проблема с производительностью может быть результатом модуля, который я создал для импорта структуры меню из другой CMS в Drupal.Я программно создал пункты меню, используя menu_link_save(), передавая name_name, link_path (node ​​/ $ nid), link_title, plid и weight.Маршрутизатор router_path, который присваивается им, называется "node /%".

. Моя проблема производительности заключается в том, что модуль контекста вызывает menu_link_load() для каждого существующего пункта меню (их довольно много), ииз этого вызова node_load() из-за способа установлен router_path.

Пытаясь устранить эту проблему, я вижу, что в базе данных есть router_path «узла», который имеет разные access_callback и access_arguments, чем «узел /%». В чем разница между этими двумя router_path, как они связаны друг с другом и когда один вызывается по сравнению с другим?

1 Ответ

2 голосов
/ 11 августа 2010

Путь 'узел' показывает все узлы, для которых установлено активное и передняя страница, по этой причине это также путь по умолчанию для вашей главной страницы.Путь «узел /%» предназначен для просмотра 1 конкретного узла с id =%.

...