現在、本番サイトのテンプレートを更新するために、サイトをオフラインにし、テンプレートを変更し、テンプレートをアンインストールし、再インストールし、テンプレート設定を元に戻し、サイトをオンラインに戻しています。私は通常、なんらかの理由でサイトを停止するのが好きではありません。このプロセスにより、特に数ページのみで使用されるテンプレートでエラーが発生する可能性があります。コンポーネントなどは簡単に更新できますが、テンプレートではこれと同じ機能が省略されているようです。
サイトをオフラインにする必要がない、テンプレートの更新を処理するためのより良い方法はありますか?
テンプレートのアップグレードは、Joomlaインストーラーを使用して、テンプレートの更新バージョンをアップロードおよびインストールするのと同じくらい簡単でなければなりません。
ただし、これを機能させるには、templateDetails.xmlファイルで「メソッド」を「インストール」ではなく「アップグレード」として定義する必要があります。
これを確認するには、テンプレートインストールファイルを解凍し、templateDetails.xmlファイルを開いて、3行目またはその周辺で次の点を確認します。
<extension version="2.5" type="template" method="upgrade" client="site">
method="install"
の場合は、method="upgrade"
に変更して、ファイルを保存します。パッケージを圧縮してインストーラーを向けると、問題ありません。
カスタマイズに関するメモ:このプロセスでは、テンプレート全体がアップロードされ、行ったカスタマイズが上書きされる可能性があります。このため、バックアップと再追加を簡単に行うために、1つのファイルに実行したいすべてのカスタマイズを追加することをお勧めします。 「custom.css」という名前のCSSファイルを使用し、このファイルを最後にロードして、カスタマイズがデフォルトをオーバーライドするようにします。
テンプレートにカスタムの変更がない場合は、現在のものの上に新しいものをインストールしてください。
カスタム変更を行った場合は、変更をやり直すか、現在のテンプレートコードと新しいテンプレートコードを比較する必要があります。
いくつかの高度なステージングオプションがあります。サイトグラウンドはこのようなものだと思います。すべてのdbテーブルを上書きせずにサイトの一部を置き換える方法があるので、これを調べるための時間とリソースがあれば、それを実行できます...十分なセットアップ時間が必要です(そしてあなたの脳をそれの周りに置くために)。
ただし、いくつかのページでテーマを変更する場合は、新しいテーマを別の名前でアップロードして、作業中に非表示のメニュー項目に適用しないでください。誰もそれを見ることができず、設定を微調整して、完了したら正しいメニュー項目に適用できます。