2017-01-13 9 views
0

joomlaのcom_content記事にプラグインを含むカスタムフィールドをいくつか追加しました。フロントエンドエディタでこれらのフィールドを編集する必要がありますが、フィールドはカテゴリに基づいて表示されます。私がフロントエンドエディタでカテゴリ43を選択したときにフィールドが表示されるだけの場合。カテゴリーに基づいてjoomla frontend edit.phpにカスタムフィールドを追加

実際、フィールドは、articletextフィールドの上にあるすべてのカテゴリに表示されます。

个人设定:

<div class="tab-pane active" id="editor"> 
    <?php echo $this->form->renderField('title'); ?> 

    <?php if (is_null($this->item->id)) : ?> 
     <?php echo $this->form->renderField('alias'); ?> 
    <?php endif; ?> 

    <!-- custom fields --> 
    <?php echo $this->form->renderField('typ', 'attribs'); ?> 
    <?php echo $this->form->renderField('notizen', 'attribs'); ?> 
    <!-- end custom fields --> 

    <?php echo $this->form->getInput('articletext'); ?> 
</div> 

他个人设定にカテゴリIDに基づいて、または別の解決策がある場合、私は使用できますか?

+0

少なくともプラグイン名を入力してください。それともカスタムビルドプラグインですか。プラグインがどのように作られているかを知ることは重要です。というのも、コードの断片だけで分析するのは容易ではないからです。そのプラグインに名前を付けることができれば、より簡単な解決法があります。 –

+0

私は自分でプラグインを作成しました。プラグインはこのチュートリアルに基づいています:https://docs.joomla.org/Adding_custom_fields_to_core_components_using_a_plugin/de – Peesen87

答えて

0

フォームオブジェクトのカテゴリにアクセスできることは間違いありません。これは、既存のコンテンツを編集するために動作しますが、あなたはこれが動作する方法に応じて、いくつかのカテゴリで初期化され、それらを強制的に、新しい記事のためにいくつかの特別な処理を行う必要があります

$category = $this->form->getValue('catid'); 
$only_on_these = array(10, 20, 30); // special categories 
if (in_array($category, $only_in_these)) { 
    // render your custom fields 
    echo $this->form->renderField('typ', 'attribs'); 
    echo $this->form->renderField('notizen', 'attribs'); 
} 
... 

のようなものを試してみてください。

関連する問題