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

9

Некоторое время назад я нашел интересный пост в блоге, в котором подробно рассказывалось о том, как очистить таблицы меню и перестроить систему меню с помощью вызова php drush. Это необходимо, так как сайт будет недоступен после очистки этих таблиц mysql. Таким образом, вы можете сбросить меню, как будто это новый сайт Drupal.

Кто-нибудь может подробно описать эту технику или у вас есть ссылка на этот блог?

giorgio79
источник
Вы говорите об очистке кэша меню?
Анил Сагар
Нет, очистка кеша меню недостаточна для исправления искаженного меню. Иногда меню портятся. Особенно меню администрации.
giorgio79
Почему -1? Это правильный вопрос. +1 противодействовать.
'11
Как были созданы эти меню? Я спрашиваю, потому что если бы они были созданы модулем, то вы можете деактивировать модуль. Это должно удалить оскорбительные пункты меню. Если вы удалите из базы данных и код для их создания все еще существует, они могут появиться снова.
Рик

Ответы:

6

Я долго искал решение этой проблемы для перестройки меню Drupal, пока не наткнулся на проблему Drupal, которая помогла мне. Мое решение (в сценарии php) заключается в следующем:

db_query("DELETE FROM {menu_links} WHERE module = 'system'");
db_query("DELETE FROM {menu_links} WHERE menu_name = 'management'");
menu_rebuild();

Это также можно сделать, введя запросы через phpmyadmin или что-то подобное:

DELETE FROM {menu_links} WHERE module = 'system'
DELETE FROM {menu_links} WHERE menu_name = 'management'

А затем перестроить структуру меню. Если вы используете модуль devel, вы можете достичь этого, посетив страницу /devel/menu/reset. Если у вас нет модуля devel, я не уверен, как перестроить структуру меню.

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

янь
источник
2

Может быть, это сообщение: http://www.zyxware.com/articles/2454/how-to-rebuild-menu-links-table-and-rebuild-the-navigation-menu

DELETE FROM menu_links WHERE menu_name='navigation'

Затем посетите страницу модулей, и меню будет перестроено.

Я тестировал в Drupal 6.

smartinm
источник
Спасибо, я думал о другом, где блоггер удалил все меню и перестроил его с помощью Drush.
giorgio79