web-dev-qa-db-ja.com

オーバーライドを更新し続ける方法は?

多くの人が知っているように、テンプレート、ビュー、モジュール、コンポーネントをオーバーライドすることが可能です。

主な問題は、Joomla!が更新され、オーバーライドされた(テンプレートフォルダー内の)アイテムが古くなります。

Joomlaへの更新が行われるたびにオーバーライドを更新し続けるにはどうすればよいですか?

手作業で行う必要があり、新しい更新を確認する必要がありますか、それとも他の方法がありますか?

10
jackJoe
  1. 上書きしたオリジナルファイルのmd5を計算する小さなスクリプトを記述します。
  2. これらのファイルパスとMD5をテンプレートのファイルにダンプします
  3. Joomlaが更新されるたびに、上記のスクリプトを再度実行します。
  4. MD5の違いを確認してください。もしあれば、チェックする必要があります。

ヒント:これらの変更がCSSオーバーライドで実行できない場合にのみ、ファイルをオーバーライドします。

4
Shyam

Joomlaコアが更新されても、テンプレートフォルダーのオーバーライドは影響を受けません。それが彼らが存在する理由です。

コアJoomlaアイテムでは、オーバーライドがJoomlaコアアップデートと競合することはほとんどありません。 Joomlaコアファイル、または任意のファイルをオーバーライドすると、ドキュメントドキュメントがドキュメント化されます。これが定期的に発生し、1つまたは2つ以上のサイトを管理している場合、オーバーライドファイルへのコメントは重要です。何を変更したか覚えていないだけです!

コードエディターには、新しいファイルを古いファイルと比較し、行ごとに変更内容を特定するための「diff」機能が必要です。よくコメントした場合、この差分は変更内容を正確に示し、ファイルが更新によって影響を受けたかどうかを示します。あなたの唯一の変更はあなたのオーバーライドでなければなりません...他のものは何でも、あなたは行って再度オーバーライドしなければなりません。

ただし、サードパーティによるオーバーライドは、開発者がMVC構造を正しく使用していない場合にのみ問題になります。コンポーネントまたはモジュールが適切にレイアウトされている場合、問題のtmplまたはビューはコードの更新の影響を受けません。

その拡張機能に大きな機能変更がある場合は、ファイルを文書化/コメントして比較する必要があります。

12
Toni Marie

はい、毎回手動でファイルを比較し、変更を更新する必要があります。マイナーアップデートでは、調整が必要になる可能性は比較的小さいですが、メジャーアップグレードでは、オーバーライドされたファイルが大幅に変更される可能性があります。私はもっ​​と簡単な方法も好みますが、それが唯一のソリューションATMです。

3
Laoneo

Joomlaのどのバージョンでもオーバーライドは変更されません。ただし、変更されたファイルを見つけた場合、Joomlaのインストール全体をSubversionで管理することができます。

次に、Subversionで適切なJoomlaコードバージョンを管理し、vendor-merge http://svnbook.red-bean.com/en/1.7/svn.advanced.vendorbr.html を実行することもできます。

0
jdog