テンプレートエンジンの移行に関して

KARTEの接客アクションでは、静的変数の置換やHTML出力前の処理のために、テンプレートエンジンを使用しています。

以前はLodashが使われていましたが、機能を増やすために、Nunjucksへの移行作業を進めています。

移行作業の完了後は、Lodashで作成された接客アクションは「非推奨」となり、サポート対象外になります。

 

移行作業について

KARTEがデフォルトで提供するテンプレート一覧について、Nunjucksを用いたテンプレートへの入れ替えを予定しています。2018年春頃の対応完了を予定しています。

なお、テンプレートエンジンの変更に伴い、接客アクション内の変数呼び出しの記法などが変わるケースがあります。そのため、既存のアクションのテンプレートエンジンが自動で変更されることはありません。

すでに使われている接客アクションをNunjucksに移行したい場合は、お手数ですが、移行作業完了後に新規テンプレートから作り直していただくよう、お願いします。

 

LodashとNunjucksの違い

変数呼び出し

「ユーザー情報変数」の呼び出し方が、LodashとNunjucksで異なります。

  • Lodash: [[変数]]
  • Nunjucks: #{変数}

※ ユーザー情報変数については、こちらをご覧ください。

 

また、「静的変数」(カスタマイズタブから設定する変数)の呼び出し方も異なります。

  • Lodash: {{変数}}
  • Nunjucks: #{変数}

ただし、WidgetのHTML、CSS、Scriptの中については、Nunjucksと同じ#{変数}という形式となります。

 

Nunjucksでのみ使える機能

Nunjucksテンプレートを使うと、 HTMLの中にロジックを埋め込むことができます。

通常はScript内で同様の制御が可能なので、HTMLメールなどScriptが使えないテンプレートの中で使用してください。

(例) titleという名前の静的変数があればそれを表示し、なければ"タイトル"と表示させる例。

{% if title %}
  #{title}
{% else %}
  タイトル
{% endif %}

また、HTMLからデータテーブルの値を直接参照する機能など、Nunjucksでしか使えないKARTEの機能もあります。