テーマでLiferay DXPのマクロを使用する

テーマでLiferay DXPのマクロを使用する

ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、こちらまでご連絡ください。

マクロ は、テーマテンプレートフラグメントを変数に割り当てることができます。 これにより、テーマテンプレートが乱雑にならず、読みやすくなります。 Liferay DXPは、FreeMarkerテーマテンプレートで使用してテーマリソースや標準ポートレットなどを含めることができる FTL_Liferay.ftl テンプレート でいくつかのマクロを定義します。 Liferay DXPは、そのtaglibをFreeMarkerマクロとして公開します。 FreeMarkerテンプレートでtaglibを使用する方法の詳細については、対応する taglibチュートリアル を参照してください。 このチュートリアルでは、FreeMarkerテーマテンプレートでマクロを使用する方法を示します。

次の手順を実行します:

  1. 次の表に示すマクロのいずれかを選択します。

    マクロパラメーター説明
    パン粉default \ _preferencesオプションの設定でパンくずリストポートレットを追加します<@liferay.breadcrumbs />
    control \ _menuなしコントロールメニューポートレットを追加します<@liferay.control_menu />
    CSSファイル名指定したファイル名の場所に外部スタイルシートを追加します<@liferay.css file_name="${css_folder}/mycss.css"/>
    dateフォーマット指定された形式で現在のロケールの日付を出力します<@liferay.date format="/yyyy/MM/dd/HH/" />
    jsファイル名指定されたファイル名ソースで外部JavaScriptファイルを追加します<@liferay.js file_name="${javascript_folder}/myJs.js"/>
    言語キー現在のロケールで指定された言語キーを出力します<@liferay.language key="last-modified" />
    language \ _format引数
    キー
    指定された言語キーを指定された引数でフォーマットします。 たとえば、キーとして go-to-x を、引数として Mars を渡すと、 Gos to Marsます。<@liferay.language_format arguments="${site_name}" key="go-to-x" />
    言語default \ _preferencesオプションの設定で言語ポートレットを追加します<@liferay.languages />
    navigation \ _menudefault \ _preferences
    instance \ _id
    オプションの設定とインスタンスIDを含むナビゲーションメニューポートレットを追加します。<@liferay.navigation_menu />
    サーチdefault \ _preferencesオプションの設定で検索ポートレットを追加します<@liferay.search />
    検索バーdefault \ _preferencesオプションの設定で検索バーポートレットを追加します<@liferay.search_bar />
    user \ _personal \ _barなしユーザー個人バーポートレットを追加します<@liferay.user_personal_bar />
  2. テーマテンプレートでマクロを呼び出します。 製品@ @のデフォルトFreeMarkerのマクロ呼び出しをして名前空間さ のLiferay。 たとえば、検索バーポートレットを含めるには、以下に示すマクロ呼び出しを追加します。

    <@liferay.search_bar>
    
  3. ポートレット設定などの必須またはオプションの引数をマクロ呼び出しに含めます。 たとえば、Liferay DXPの 言語 マクロディレクティブには、言語キーパラメーターが含まれます。

    <#macro language
      key
    >
      ${languageUtil.get(locale, key)}
    </#macro>
    

    次のように、マクロ呼び出しで引数を渡すことができます。

    <@liferay.language key="powered-by" />
    

    以下の例では、検索ポートレットの ポートレットデコレータ をベアボーンに設定します。

    <@liferay.search default_preferences=
      freeMarkerPortletPreferences.getPreferences(
        "portletSetupPortletDecoratorId", "barebone"
      ) 
    />
    

    ナビゲーションメニューポートレットの以下の例に示すように、複数のポートレットプリファレンスをオブジェクトに渡すこともできます。

    <#assign secondaryNavigationPreferencesMap = 
      {
        "displayStyle": "ddmTemplate_NAVBAR-BLANK-JUSTIFIED-FTL", 
        "portletSetupPortletDecoratorId": "barebone", 
        "rootLayoutType": "relative", 
        "siteNavigationMenuId": "0", 
        "siteNavigationMenuType": "1"
      } 
    />
    
    <@liferay.navigation_menu
      default_preferences=
      freeMarkerPortletPreferences.getPreferences(secondaryNavigationPreferencesMap)
      instance_id="main_navigation_menu"
    />
    

これで、テーマテンプレートでLiferay DXPのマクロを使用する方法がわかりました!

関連トピック

テーマの作成

テーマ用に再利用可能なコードを作成する

テーマリファレンスガイド

« サイトの独立したUIリソースのパッケージ化テーマを使用したリソースのインポート »
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています