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


9

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

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


Вы говорите об очистке кэша меню?
— Анил Сагар

Нет, очистка кеша меню недостаточна для исправления искаженного меню. Иногда меню портятся. Особенно меню администрации.
— 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.


Спасибо, я думал о другом, где блоггер удалил все меню и перестроил его с помощью Drush.
— giorgio79
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.