drupalメニューを完全にワイプして再構築する方法は?


9

少し前に、メニューテーブルを空にして、drush php呼び出しでメニューシステムを再構築する方法を詳しく説明したクールなブログ投稿を見つけました。これらのmysqlテーブルを空にするとサイトが使用できなくなるため、必要です。これにより、新しいDrupalサイトのようにメニューをリセットできます。

誰かがこのテクニックを詳しく説明できますか、そのブログへのリンクはありますか?


メニューのキャッシュをクリアすることについて話していますか?
Anil Sagar 2012年

いいえ、メニューキャッシュのクリーニングは、文字化けしたメニューを修正するには不十分です。メニューがめちゃくちゃになることがあります。特に管理メニュー。
giorgio79

なぜ-1?有効な質問です。打ち消すために+1する。
2012年

これらのメニューはどのように作成されましたか?それらがモジュールによって作成された場合は、モジュールを非アクティブ化できると思います。これにより、問題のあるメニュー項目が削除されます。データベースから削除し、これらを作成するコードがまだ存在する場合、それらは再びポップアップする可能性があります。
Rick

回答:



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。私はあなたが開発モジュールを持っていないので、メニュー構造を再構築する方法がわかりません。

これを試す前に、必ずデータベースバックアップしてください


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 2012年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.