oo

テンプレートへのウィジェットの埋め込み

ウィジェットはWebコンテンツテンプレートに埋め込むことができます。コアアプリ、カスタムアプリ、インスタンス化可能、インスタンス化不可能であるかどうかは関係ありません。 以下は、FreeMarkerにWebコンテンツウィジェットを埋め込む例です。

<@liferay_portlet["runtime"] portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" />

Webコンテンツテンプレートへのウィジェットの埋め込みを開始するには、次の手順に従います。

  1. サイト(この例ではデフォルトのDXPサイト)の サイト管理 に移動します。

  2. コンテンツ&データ] → [Webコンテンツ] をクリックします。

  3. テンプレート] タブをクリックします。

     テンプレートタブには、サイトのテンプレートが表示されます。

  4. 追加(Add Icon)アイコンをクリックします。

  5. テンプレートの名前を入力します(たとえば、 テンプレート1

  6. Properties] セクションから [選択] をクリックして、ストラクチャーを選択します(たとえば、 ストラクチャー1)。

    ストラクチャーを選択します。

  7. マクロ(たとえば<@liferay_portlet["runtime"] portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" />)をテンプレートエディタに貼り付けます。 ポートレットがインスタンス化可能かどうかによっては、ポートレットIDの入力が必要になる場合があります。

    ポートレットマクロを入力します。

  8. 完了したら、 [保存] をクリックします。

important

FreeMarker のコンテキストに theme 変数が注入されなくなりました。 DXP 7.0 でテーマ変数が削除された理由と、コードの更新に関する提案については、 Taglibs Are No Longer Accessible via theme Variable in FreeMarker breaking change エントリをご覧ください。

他のテンプレートの埋め込み

テンプレートにウィジェットを埋め込むことに加えて、別のテンプレート内にテンプレートを埋め込むことができます。 これにより、再利用可能なコード、JavaScriptライブラリのインポート、スクリプト、またはマクロが可能になります。

以下は、FreeMarkerにテンプレートを埋め込む例です。

<#include "${templatesPath}/[template-key]" />

以前に公開されたテンプレートを編集するときに、 テンプレートキー を確認できます。

テンプレートの編集ページを表示すると、テンプレートキーを確認できます。

関連トピック