web-dev-qa-db-ja.com

特定のモジュールの更新をチェックしないようにするにはどうすればよいですか?

現在のプロジェクトでは、いくつかのモジュール(ノード階層、ワークベンチへのアクセスなど)の寿命にパッチを当てる必要がありました。これらのモジュールは現在、プロジェクトのニーズに完全に対応しており、コアの将来のアップデートで壊れることはほとんどありません。

つまり、アプリがクライアントに渡されると、システムへのフル(ユーザー1)アクセス権が与えられるため、これらのモジュールに利用可能な更新があると警告が表示されます。そして、彼らは意志を何度も更新します(私が何度も彼らに頼まないでください).

これらのモジュールの更新をチェックしないように更新マネージャーを説得する方法はありますか(おそらくモジュールの.infoファイルにあります)?

[〜#〜]編集[〜#〜]

project status urlファイルで使用できる.infoキーを知っているので、存在しないURLに設定できると思いますが、可能であれば、これをきれいな方法で行うほうがはるかに便利です。

35
Clive

hook_update_projects_alter() を実装する必要があります。

データをフェッチしてバージョンを比較する前に、プロジェクトのリストを変更します。

ほとんどのモジュールは、このフックを実装する必要はありません。これは、更新ステータスモジュールとの高度な相互作用のためのものです。単なる人間が適用される必要はありません。このフックの主な使用例は、プロジェクトをリストに追加することです。たとえば、無効化されたモジュールとテーマの更新ステータスデータを提供します。寄稿されたモジュールは、リストからプロジェクトを非表示にする場合があります。たとえば、公式リリースがないサイト固有のモジュールがある場合、そのモジュールはこのリストから自身を削除して、「利用可能なリリースが見つかりません」という警告を回避できます。利用可能な更新レポート。まれに、モジュールが、リストに既に含まれているプロジェクトに関連付けられているデータを変更する場合があります。

32
Chapabu

。infoファイルのprojectキーは、drupal.orgのパッケージングスクリプトによって追加され、モジュールの元のプロジェクトを識別します。主な用途は、更新ステータスモジュールがインストール済みパッケージのバージョンを監視し、新しいバージョンが利用可能になったときに管理者に通知することです。

。infoファイルのこの行を削除またはコメントし、Drupalこのモジュールの更新のチェックを停止します。

19
smartinm

選択した答えを助けるためのコードサンプルを提供するだけです:

_function MYMODULE_update_projects_alter(&$projects){
    unset($projects['slug_of_the_module_you_want_to_disable']);
    //dsm($projects);  // view a list of projects
}
_

モジュール名を_$projects[]_変数に入力して無効にします。スラグが何であるかがわからない場合(小文字でアンダースコアが付けられます)、そのdsm()呼び出しまたはprint_r()を使用して、モジュールのリストを出力します。

14
emc

それには2つの方法があります。

  • drush pm-updatecode --lock = module_to_ignore
  • pdate_advanced module を使用します。これにより、モジュール管理ページで無視するモジュールにマークを付けることができます。

特に、特定のプロジェクトや特定のリリースを無視するためのプロジェクトごとの設定は、モジュールのコアバージョンにはありません。 「ステータスの詳細設定の更新」モジュールはこれらの設定を復元し、最終的には「ステータスの更新」モジュールの追加機能を提供する可能性があります。

12
4life

モジュールの更新で同じ問題が発生しました Disable Updates モジュールをインストールしましたが、モジュールはうまく機能しているようです。

これは小さな管理モジュールであり、更新設定フォーム(/ admin/reports/updates/settings)でhook_update_projects_alter()の機能を公開することにより、サイト管理者が特定のテーマおよびモジュールの更新のチェックを無効にできるようにします。テーマとモジュールを任意に選択できるだけでなく、カスタムモジュール、パッチを適用したモジュール、サイト固有の機能モジュールを自動検出できます。

enter image description here

2
Krishna Mohan

基本的に、あなたはフォークを作りましたよね?だからあなたはすべきです:

  1. フォークマークを含むように名前を変更します
  2. 情報ファイルで、project status urlをそのモジュールのリポジトリに追加します。

最後に重要なことですが、サポートされていないが、他のモジュールを支持して非推奨にならなかった場合は、共同メンテナになって修正をコミュニティと共有することを検討することを検討してください。

0
Mołot