Documentation

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

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

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

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

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

  2. [Content & Data] → [Webコンテンツ] の順にクリックします。

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

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

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

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

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

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

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

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

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

重要

theme変数はFreeMarkerコンテキストに挿入されなくなりました。 DXP 7.0でtheme変数が削除された理由や、コードを更新するための提案については、 Taglibs Are No Longer Accessible via the theme Variable in FreeMarker の破壊的変更のエントリーを参照してください。

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

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

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

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

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

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