私のカスタムコンポーネントでは、各ビューに対して多くのJavaScript検証を行います。検証によりさまざまなエラーメッセージがスローされ、それらのメッセージは言語ファイルen-GB.com_mycomp.ini内で構成され、JavaScriptインクルードを以下のようにPHPファイル内に記述します。
view.html.php
require_once JPATH_COMPONENT.'/views/send/tmpl/validation.php';
validation.php
function doValidation(){
// do some checking
alert("<?php echo JText::_( 'VALIDATION_ERROR'); ?>");
}
これにより、JavaScriptコードがPHPファイルとともにレンダリングされます。
私が考えていたのは、標準$document->addScript(...)
関数を使用して、.jsファイルがヘッダーの一部としてロードされるようにすることです。インラインPHPステートメントを取得したので、そのようにすることはできません。
注:コンポーネントは言語に依存しないため、.jsファイル内のエラーメッセージをハードコーディングしたくありません。
言語固有の値を持つJavaScriptコードをインクルードする最良の方法に関するいくつかの指示が必要です。
JText::script('VALIDATION_ERROR');
をview.html.php
ファイルのどこに追加するのですか?