web-dev-qa-db-ja.com

段落アイテムをどのように再利用しますか?

段落アイテムは、親エンティティのみが使用できます。しかし、既存の段落アイテムを再利用できるようにする既知の方法はありますか?

5
Mudassar Ali

段落は、コンテンツではなくレイアウトの再利用に焦点を当てています。最も明白な影響はリビジョンです。

標準参照フィールドでは、ターゲットの最新リビジョンを参照します。親をロールバックすると、ターゲットは実際のコンテンツを保持します。一方、段落は改訂を追跡し、エンティティが所有する段落のコンテンツを含むエンティティをロールバックできるようにします。そしてそれが問題です。もし段落が再利用を許可する場合、複数のホストエンティティ間で共有される段落のロールバックをどのように処理する必要がありますか。

したがって、段落はコンテンツを再利用するためのツールではありません。

しかし、良いニュースがあります。これを可能にするライブラリエンティティがあります。

ライブラリエンティティタイプを実装します

この個別のエンティティタイプを作成します。-バンドルの自動同期+段落のフィールド-ラベルを追加します(それらを管理するために必要な場合は、さらに管理フィールドを追加します)。

再利用可能な段落は通常、前の段落のクローンとして保存されます。オリジナルの合成ではありません。再利用可能な段落には独自の独立した編集フォームがあり、追加フォームから個別に作成することもできます。

ユーザーは、「ライブラリーに追加」アクションをクリックして、段落を再利用可能にすることができます。これにより、段落が複製され、元のホストエンティティには、有効な再利用可能な段落への参照を含む新しい段落インスタンスが追加されます。

段落タイプ「ライブラリから」には、再利用可能な段落へのエンティティ参照しか含まれていません。最初は、ここでオートコンプリートウィジェットを使用して問題ありません。

https://www.drupal.org/node/2843917

11
4k4