日本語版はAIによる翻訳です。正確な情報については英語版をご参照ください。
以下では、Auxiaコンソールで見た目を管理する方法について説明します。
前提条件
- Auxiaコンソールで発行された APIキー と プロジェクトID。
- Auxiaコンソールのプロジェクト設定で Project Website URL が設定されていること。コンソールはこのURLを使ってサイトを開き、表示位置の選択やトリートメントのプレビューを行います。
1. 読み込み
トリートメントを表示する可能性のあるすべてのページに、SDKのスクリプトを追加します。2. 初期化
3. コンソールでの見た目の管理を有効化する
Auxia担当者に、プロジェクトでコンソールでの見た目の管理を有効にするようご依頼ください。有効化されると、Auxiaコンソールの Configuration > UI Layout にあるサーフェス一覧に SDK status 列が表示され、対象のサーフェスを確認できます。4. サーフェスとトリートメントを設定する
Auxiaコンソールで以下を行います。- サーフェスを作成し、公開中のサイト上で要素を選択して表示場所を指定します。
- 対象とするページと、その要素に対する挿入方法を選択します。
- サーフェスのLayoutを選択します。
- トリートメントを設定し、公開前にサイト上でプレビューします。
ページパス
ページパスはパス全体と照合されます。/jobs/ はそのページのみに一致します。/jobs/index.html とその配下もすべて対象にするには /jobs/** を使用してください。
挿入位置
Google タグ マネージャーを使う
サイトのコードを編集する代わりに、カスタム HTML タグでSDKを追加することもできます。SDKのスクリプトを読み込み、読み込み完了後にAuxia.initialize() を呼び出すカスタム HTML タグを作成します。ユーザーIDはGTMの変数(例: データレイヤーの変数)から渡し、タグはトリートメントを表示する可能性のあるすべてのページで、ユーザーIDが取得できた後に配信されるよう設定してください。
サイト上でのSDKの動作
- Auxiaからサーフェスの設定を読み込み、ブラウザにキャッシュします。
- 各ページで、ページパスが一致するサーフェスにのみトリートメントを表示します。遅れて読み込まれる要素も待機します。
- 表示・クリック・閉じる操作は自動的に記録されます。インタラクションの記録を参照してください。
- シングルページアプリケーションの画面遷移にも対応しており、パスの変化に合わせてサーフェスを除去・再表示します。
- エラーは内部で処理されます。問題が起きてもページは変更されず、サイトのコードに例外が投げられることも、初回描画が妨げられることもありません。
インタラクションの記録
表示は、トリートメントの半分以上が1秒間表示された時点で自動的に記録されます。クリックと閉じる操作は、LayoutまたはDesignテンプレート内でdata-aux-button-name を持つ要素に対してのみ記録されます。
data-aux-button-name を持たない要素のクリックは記録されません。
ページからコンテキスト属性を渡す
会員ランクやカートの金額など、ページ側でしか分からないコンテキストをコンテキスト属性として渡すと、Auxiaはコンソールで管理するサーフェスのトリートメントの選択とパーソナライズにその値を使用します。- ページ読み込み時に分かっている値は
initialize({ contextualAttributes })に渡します。最初のリクエストから送信されます。 setContextualAttributes(attributes, { scope })は設定済みの値にマージされ、nullを指定するとキーが削除されます。呼び出し自体はリクエストを送信しません。値はSDKの次のリクエストで送信されるか、その属性の変化で再取得するよう設定された設置場所ではすぐに送信されます。- 値には
string、number、boolean、Dateのいずれかを指定できます。 scopeが意味を持つのは、シングルページアプリケーションの場合だけです。ページを再読み込みすると、すべての値がクリアされます(SDKが初期状態から始まります)。"page"の場合はURLのパスが変わったときにもクリアされ、"session"(デフォルト)の場合は画面遷移しても保持されます。- 空のキーやAuxiaが予約しているキー(
auxia_*で始まるキー、user_id、surfacesなど)、サポートされていない型の値、不明なscopeを指定すると例外をスローします。NaN、Infinity、無効なDateは、ブラウザのコンソールにエラーを出力してスキップされます。
属性の変化で設置場所を再取得する
デフォルトでは、設置場所はページ表示ごとに1回だけ取得するため、後から設定した値は次のリクエストから使用されます。特定の属性が変わったときに再取得させるには、Auxiaコンソールで対象のサーフェスを開き、設置場所 ステップで 詳細設定 · コンテキストの変化で再取得 を展開します。属性を追加 で属性を追加し、変更されたとき で動作を選択してください。- 空なら埋める(デフォルト):設置場所に何も表示されていない間だけ再取得します。すでにページに表示されているコンテンツはそのままです。
- コンテンツを置き換え:値が変わるたびに再取得し、新しい結果を表示します。何も返ってこなかった場合は、現在のコンテンツがそのまま残ります。
スタイリング
サーフェスはShadow DOM内に描画されるため、ページのスタイルシートは適用されません。既存のクラス名を使ってもスタイルは当たりません。 一方、CSSカスタムプロパティは境界を越えて継承されるため、ページ側で定義したトークンをサーフェス内から参照できます。カスタムコードで管理しているサーフェスをコンソールに移す
カスタムコードで管理している既存のサーフェスは、そのまま動作し続けます。コンソールでの管理に移す場合は、以下のとおりです。- そのサーフェスの
fetchAndRenderTreatments()またはgetTreatments()の呼び出しを削除します。他のサーフェスの呼び出しは引き続き動作します。 - コンテナ要素と
surfaceHtmlElementIdは、コンソールで選択する表示位置に置き換わります。 data-aux-*のインタラクション属性は、ページのマークアップではなく、コンソール上のLayoutおよびDesignテンプレートに記述します。- コンテキスト属性は呼び出しごとに渡さず、
setContextualAttributes()で一度設定します。
トラブルシューティング
サーフェスが表示されない場合は、以下を確認してください。- コンソールに SDK status 列が表示されているか。表示されていない場合、プロジェクトでコンソールでの見た目の管理がまだ有効化されていません。
Auxia.initialize()が空でないuserIdで呼び出されているか。- サーフェスのページパスが、表示中のページと一致しているか。
- サーフェスを配置した要素がページ上に存在するか。
- サーフェスに公開済みのLayoutと、配信中のトリートメントが1つ以上あるか。