関連するエントリフィールドのビューを変更することは可能ですか?

関連エントリフィールドの表示を変更して余分な情報を含めることは可能ですか(サムネイルを追加することを望みます。そうしないと、これらのエントリは識別が難しいからです)。

defineAdditionalEntryTableAttributes
でフック可能な標準的なテーブルビューと全く同じである考える
または、フィールドタイプの標準ビューをオーバーライドできますか?

enter image description here

ベストアンサー

Easy task: you can create your own relations field and use that
instead. Take a look at the default Entries field here is the PHP code for it click

あなたがしなければならないことは、レンダリングすべきテンプレートを変更することです。

class MyCustomRelationField extends BaseRelationField
{
   //Static
   //=========================================================================
    /**
     * @inheritdoc
     */
    public static function displayName(): string
    {
        return Craft::t('app', 'My awesome field');
    }
    /**
     * @inheritdoc
     */
    protected static function elementType(): string
    {
        return Entry::class;
    }
    /**
     * @inheritdoc
     */
    public static function defaultSelectionLabel(): string
    {
        return Craft::t('app', 'Add an entry');
    }

    /**
     * @var string Template to use for field rendering
     */
    protected $inputTemplate = 'path/to/your/custom/template';
}

$ inputTemplate
はcpでレンダリングされるテンプレートですので、デフォルトのここをベースとして必要な部分を変更します

<div class="elements">
    {% for element in elements %}
        {% include "_elements/element" with {
            context: 'field',
            size: (viewMode == 'large' ? 'large' : 'small')
        } %}
    {% endfor %}
</div>

あなたが好きなものに。このインクルードのデフォルトのコンテンツは、ここ。あなたのアイコン/サムネイルと一緒に自分のテンプレート(またはフック)に変更/含める必要があるものを参考にしてください

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です