データベースにエラーがある場合、Joomlaはそのエラーをスローします。これは実行サイクルの非常に早い段階で行われるため、Joomlaアプリケーションからの準備ができていないため、単純なテキストのエラーメッセージを含む醜い空白のページが表示されます。
それらをオーバーライドして、これらのエラーがたとえば静的なHTMLエラーページに送られるようにする方法はありますか?私はすでにこれをチェックしました
https://docs.joomla.org/Custom_error_pages
しかし、もし私が間違っていなければ、これはこれらのエラーに対しては機能しません。適切にロードされるより多くのものを必要とするからです。そうではありません。
前もって感謝します!
遅い答えでごめんなさい。
はい、可能ですが、ルートインストールディレクトリにあるJoomlaのメインの_index.php
_ファイルを少し編集する必要があります。
簡単な説明:このエラーメッセージは、実際にはJoomlaのコアクラスgetApplication
のメソッドJFactory
によってスローされた例外です。したがって、Joomlaコアに少し触れずにエラーメッセージを単にカスタマイズすることはできません。
クイックソリューション:メソッドgetApplication
が呼び出されたときに必要なのはtry-catchだけです。これを行うには、ルートインストールディレクトリにあるファイル_index.php
_を開き、$app = JFactory::getApplication('site')
などを検索します。次に、以下の行に置き換えます。
_try {
$app = JFactory::getApplication('site');
}
catch (Exception $e) {
// Do something when the site cannot be instantiated.
header('Location: my-error-file.html');
}
_