У меня есть пункт меню «Входящие» в меню «Дилерское меню». Я хочу изменить «Входящие» на «Входящие (1)» или «Входящие (2)» в зависимости от количества сообщений, которые пользователь имеет в своем почтовом ящике. Как изменить значение ON THE FLY. То есть на каждой странице обновления?Редактирование пунктов меню на лету в Drupal?
ответ
я в конечном итоге решение так:
$dealerMenu = menu_navigation_links('menu-dealer-menu');
$menu = theme('links', $dealerMenu);
print str_replace("Inbox", "Inbox (".get_number_of_messages_in_inbox().")", $menu);
Если вы звоните hook_menu_link_alter, то вы можете установить $item['options']['alter'] = TRUE;
по каждому пункту меню - вам нужно будет отредактировать пункт меню для этого крюк, чтобы назвать и альтер разрешение установлено в true.
После того, как это было установлено, будет вызываться hook_translated_menu_link_alter перед тем, как будет отображаться каждый пункт меню, что позволит вам изменить заголовок элемента меню.
Пример кода будет:
function MY_MODULE_menu_link_alter(&$item) {
$item['options']['alter'] = TRUE;
}
function MY_MODULE_translated_menu_link_alter(&$item, $map) {
if($item['mlid']==89) {
$item['title'] .= ' ('.get_number_of_messages_in_inbox().')';
}
}
Единственное ограничение в том, что hook_menu_link_alter будет отмечать каждую ссылку как изменяемый, который не обязательно является желательным (неблагоприятное влияние на производительность) - некоторые дополнительные проверки на $ пункта здесь означало бы, что вы только отмечаете их пункты меню, которые вы хотите изменить.
- 1. Drupal: маркеры пунктов меню?
- 2. Controllling в Drupal с дублированием пунктов меню
- 3. Редактирование меню темы drupal css
- 4. Редактирование javascript на лету
- 5. Drupal limit количество пунктов меню в первичных ссылках
- 6. Drupal 6: Добавление пунктов подменю в пункт меню?
- 7. На лету растровое редактирование в Android
- 8. пунктов меню Дисплея на ActionBar
- 9. Создание типов контента «на лету» в Drupal
- 10. Drupal: Как изменить классные имена моих пунктов меню?
- 11. отображение меню и пунктов меню
- 12. Удаление меню и пунктов меню
- 13. Python Отладка: редактирование кода на лету
- 14. Редактирование удаленного файла на лету с PHP
- 15. Изменение пунктов меню
- 16. Заполнение пунктов меню выпадающего меню (в JSP)
- 17. Webix - скрытие пунктов меню
- 18. Скрытие пунктов меню в blackberry
- 19. Добавление пунктов меню в wordpress
- 20. Смещение пунктов меню
- 21. Как закрыть меню ящика при нажатии на меню пунктов меню?
- 22. Изменение пунктов меню камеры
- 23. удаление пунктов меню удаленно
- 24. Drupal изменить размер изображения на лету
- 25. Редактирование Drupal print
- 26. Редактирование нижнего колонтитула Drupal
- 27. Сохранение/редактирование узла Drupal
- 28. Создание меню на лету в главной странице
- 29. Просмотр пунктов меню на панели инструментов
- 30. Несколько пунктов меню на карточке, включая пиннинг