web-dev-qa-db-ja.com

モジュールの重量の変更-モジュールごとまたは手動

D7で特定のモジュールの重量を変更する方法を探しています。データベースの構成テーブルで実行できることは知っていますが、方法がわかりません。 Drupal.orgで見つけたもう1つの解決策は、フックを使用することですが、より詳細な説明や、それに関するチュートリアルを入手できるガイダンスが必要です。

私がしなければならないことは、他のモジュールよりも速く読み込まれるように、特定のモジュールの優先順位を高くすることです。例の1つは、OS XのSafariブラウザでそれを監視するLightbox2ポップアップを使用したビデオストリーミングです。ライトボックスモジュールの優先度を変更するまでロードされません。

2
Benas Plentas

Phpmyadminにアクセスできる場合は、システムテーブルを確認できます。モジュールが見つかったら、小さな鉛筆のアイコンをクリックしてテーブルの行を編集できます。ウェイト列を編集します。

1
JM01

明示的に要求されたため、このタスクを実行するモジュール Modules weight もあります。

モジュールの実行順序を常に変更する必要があります。また、クエリを実行してシステムテーブル内のモジュールの重みを変更するコードを記述したり、お気に入りのSQLクライアントに直接アクセスしてレコードを直接変更したりすることもできます。このモジュールは管理インターフェイスを提供しますユーザー/人々は、必要に応じてモジュールの重みを並べ替えるためにモジュールページにアクセスできます

3
Shawn Conn

このジョブにも drush を使用できます。以下のコマンドを使用して、modulenameおよびmoduleweightの値を好みに合わせて調整します。

  1. モジュールの現在の重量を調べます。

    modulename="rdf"
    drush php-eval "drush_print_r(db_select('system', 's')
      ->fields('s', array('weight'))
      ->condition('name', '$modulename', '=')
      ->execute()
      ->fetchField()
    );"
    
  2. モジュールの新しい重みを設定します。

    modulename="rdf"
    moduleweight="1"
    drush php-eval "db_update('system')
      ->fields(array('weight' => $moduleweight))
      ->condition('name', '$modulename', '=')
      ->execute();"
    
1
tanius

さまざまなモジュールで見たのは、db_query呼び出しを使用してデータベースで直接実行することです。何かのようなもの:

db_query("UPDATE {system} SET weight = 12 WHERE name = 'admin_views'");
1
mtrolle