web-dev-qa-db-ja.com

フロントエンドの編集ページに関連タブ/フィールドを追加

フロントエンド機能をカスタマイズしようとしています。

オーバーライド\ templates\protostar\html\com_content\form\edit.phpの106行目あたりにこれを追加することで、エイリアスフィールドを簡単に追加できます。

<?php echo $this->form->renderField('alias'); ?>

しかし今、私は関連タブとフィールド(バックエンドのように)だけでなく、カテゴリーも追加するのに苦労しています。私はこれを試しましたが、成功しませんでした:

<?php echo $this->form->renderField('associations'); ?>
<?php echo $this->form->renderField('category'); ?>

私のphpに関する知識は非常に限られており、\ administrator\templates\isis\html\com_content\article\edit.phpを注意深く分析してもあまり役に立ちませんでした(フロントエンドとバックエンドの編集ページは同じ方法で作成されますが、明らかに番号)。

あなたの助けをありがとう!

3
MagTun

あなたが正しいです。フロントエンドモデルとバックエンドモデルは異なります。正確には:

  • バックエンドサイトでは、ContentModelArticleはJModelAdminです。
  • フロントエンドサイトでは、ContentModelArticleはJModelItemです

たとえば、フロントエンドサイトでは、記事ビューは、バックエンドサイトとは大きく異なるarticle.xmlフォームを持っています。

したがって、レンダリングできるのはこれらのフィールドのみです。例えば。カテゴリはcatidである必要があります

2
Anibal