web-dev-qa-db-ja.com

コンテンツカテゴリを拡張するには

Template/html/component /でオーバーライドまたは代替レイアウトを作成できますが、新しいレイアウトのパラメーターに基づいてクエリを拡張するにはどうすればよいですか?コアを壊すことなくモデルを拡張するにはどうすればよいですか?

1
poproar

人々がこれを読んで、同様の問題がある場合にオーバーライドによってあなたが何を意味するのか理解できるように、必要なことをもう少し徹底的にするつもりです。

テンプレートには、HTMLフォルダーが必要です

コンポーネントの新しいビューを作成するには(これはモジュールの同じプリンシパルです。この例ではCOM_CONTENTを使用します)

  • Com_contentというフォルダを作成します
  • 変更するビューのフォルダーを作成します。 (root)/ components/com_content/viewsに移動すると、ビューのリストを表示できます

この場合、記事、アーカイブ、カテゴリのオーバーライドを作成したいとしましょう root)/ components/com_content/views /(view)/ tmplのコンテンツ(phpビューファイル)を(template)/ html /にコピーしますcom_content /(views)-tmplフォルダは必要ありません-ビューをオーバーライドするためにコピーする必要があるのはphpファイルだけです

テンプレートのフォルダ構造は次のようになります

enter image description here

私はあなたが知っていると確信していますが、これは、ただ明確にするためです

default.phpがメインテンプレートファイルになります

default_items.phpはdefault.phpテンプレートのブロックであり、おそらくグリッドのような別のビューです

よくやった!これで、更新がそれを壊すことを心配することなく変更できるオーバーライドがあり、必要な新しいコードを追加します。ただし、view.html.phpに若干の変更を加える必要がある場合があります。これは通常、変数を生成するものです。

しかし、それは簡単ですが、ビューは単純ですが、モデルまたはコントローラーに変更を加えるには、サードパーティのプラグインの助けが必要です。

そのままコピー/貼り付けするのではなく、簡単に説明する短い記事にリンクします

---(http://docs.joomla.org/How_to_override_the_component_mvc_from_the_Joomla!_core

2
MOLEDesign