1

com_content / views / article/view.html.phpにいくつかの変更を加える必要があります

そのファイルit`saクラス:

class ContentViewArticle extends JViewLegacy{

}

一部のカテゴリでは、現在の別の方法でメタディスクリプションを設定する必要があるため、このクラスをオーバーライドするにはどうすればよいですか。

コアソースファイルを次の場所にコピーしました:templates / my_template_name / code / com_content / views / article / view.html.php

いくつか変更を加えましたが、機能しません。

新しいファイルは使わないと思います。私はjoomla2.5.7を使用しています

ありがとうございました

4

2 に答える 2

4

view.htmlをオーバーライドする必要はありませんが、com_content / views / article / tmpl/default.phpのみをオーバーライドします。でコピーを作成するだけです

/templates/your_template/html/com_content/article/default.php

コピーを編集します。その後、使用することができます

$document = JFactory::getDocument();
$document->setMetaData(...

メタフィールドを変更します。最終的にはテンプレートによってレンダリングされるため、メタデータを自分で出力する必要はありません。

上記は、コンポーネントまたはテンプレートのどこでも実行できますが、モジュールでは実行できません。

于 2013-02-06T08:47:45.280 に答える
1

ファイルに対してテンプレートのオーバーライドを行うことはできませんview.html.php。これを行う場合は、コアファイルを編集する必要があります。記事パラメータ内で記事のメタディスクリプションを設定できることを忘れないでください(編集/新しい記事ビューのアコーディオン内にあります)。

最後に、これらの変更を行う前に、Joomlaバージョンを2.5.9に更新します-更新する必要がありますがview.html.php、更新すると変更が失われます

于 2013-02-05T15:55:54.890 に答える