高度な URL 設定

メモ

検索エンジン最適化(SEO)は、多くのマーケティング担当者にとって重要な課題となっています。したがって、多くの AEM プロジェクトで SEO に関する課題に対処する必要があります。詳しくは、SEO および URL 管理のベストプラクティスを参照してください。

AEM CIF コアコンポーネントは、製品ページとカテゴリページの URL をカスタマイズする高度な設定を提供します。多くの実装では、検索エンジン最適化(SEO)用にこれらの URL をカスタマイズします。次のビデオでは、UrlProvider サービスと Sling マッピングの機能を設定して、製品ページとカテゴリページの URL をカスタマイズする方法について詳しく説明します。

設定

SEO の要件とニーズに応じて UrlProvider サービスを設定するには、プロジェクトで「CIF URL Provider configuration」の OSGI 設定を指定する必要があります。

メモ

AEM CIF コアコンポーネントのリリース 2.0.0 以降では、URL プロバイダーの設定には、1.x リリースで提供されていた設定可能なフリーテキスト形式ではなく、事前に定義された URL 形式のみが使用されます。さらに、セレクターを使用して URL 内のデータを渡すことはなくなり、代わりにサフィックスが使用されます。

製品ページの URL 形式

製品ページの URL を設定するもので、次のオプションをサポートしています。

  • {{page}}.html/{{sku}}.html#{{variant_sku}}(デフォルト)
  • {{page}}.html/{{url_key}}.html#{{variant_sku}}
  • {{page}}.html/{{sku}}/{{url_key}}.html#{{variant_sku}}
  • {{page}}.html/{{url_path}}.html#{{variant_sku}}
  • {{page}}.html/{{sku}}/{{url_path}}.html#{{variant_sku}}

Venia 参照用ストアの場合は次のとおりです。

  • {{page}}/content/venia/us/en/products/product-page に置き換えられます
  • {{sku}} は製品の SKU(例:VP09)に置き換えられます
  • {{url_key}} は製品の url_key プロパティ(例:lenora-crochet-shorts)に置き換えられます
  • {{url_path}} は製品の url_path(例:venia-bottoms/venia-pants/lenora-crochet-shorts)に置き換えられます
  • {{variant_sku}} は、現在選択されているバリアント(例:VP09-KH-S)に置き換えられます

url_path が非推奨になったため、あらかじめ定義された製品のURLフォーマットは製品の url_rewrites を使用し、url_path が利用できない場合は最もパスセグメントが多いものを代替手段として選択します。

上記のサンプルデータでは、デフォルトの URL 形式を使用して設定された製品バリアント URL は /content/venia/us/en/products/product-page.html/VP09.html#VP09-KH-S のようになります。

カテゴリページの URL 形式

カテゴリページまたは製品リストページの URL を設定するもので、次のオプションをサポートしています。

  • {{page}}.html/{{url_path}}.html(デフォルト)
  • {{page}}.html/{{url_key}}.html

Venia 参照用ストアの場合は次のとおりです。

  • {{page}}/content/venia/us/en/products/category-page に置き換えられます
  • {{url_key}} はカテゴリの url_key プロパティに置き換えられます
  • {{url_path}} はカテゴリの url_path に置き換えられます

上記のサンプルデータでは、デフォルトの URL 形式を使用して設定されたカテゴリページ URL は /content/venia/us/en/products/category-page.html/venia-bottoms/venia-pants.html のようになります。

メモ

url_path は、製品またはカテゴリの上位層の url_keys と製品またはカテゴリの url_key をスラッシュ / で区切って連結したものです。

特定のカテゴリーページ/製品ページ

カタログのカテゴリーまたは製品の特定のサブセットに対してのみ、複数のカテゴリーページおよび製品ページを作成することができます。

UrlProvider は、そのようなページへのディープリンクをオーサー層インスタンスで生成するように事前に設定されています。 これは、編集者がプレビューモードでサイトを閲覧し、特定の製品ページまたはカテゴリーページに移動したあと編集モードに切り替えてページを編集する場合に便利な機能です。

一方、パブリッシュ層インスタンスでは、例えば検索エンジンのランキングを落とさないように、カタログページの URL を安定した状態に保つ必要があります。そのため、パブリッシュ層インスタンスは、デフォルトでは特定のカタログページへのディープリンクをレンダリングしません。 この動作を変更するには、常に特定のページの URL を生成するように CIF URL プロバイダー固有のページ戦略​を設定します。

カスタム URL 形式

カスタム URL 形式を指定するには、プロジェクトで ProductUrlFormat または CategoryUrlFormat サービスインターフェイスを実装し、その実装を OSGi サービスとして登録します。 これらの実装が用意されている場合は、設定されている事前定義済み形式の代わりに、その実装が使用されます。 複数の実装が登録されている場合は、サービスランキングの高い実装が、サービスランキングの低い実装と入れ替わります。

カスタム URL 形式の実装では、指定されたパラメーターから URL を作成するメソッドと URL を解析して同じパラメーターを返すメソッドのペアを実装する必要があります。

Sling マッピングとの結合

UrlProvider に加え、URL の書き換えと処理を行うために、Sling マッピングを設定することもできます。AEM アーキタイププロジェクトでは、ポート 4503(パブリッシュ)および 80(ディスパッチャー)の Sling マッピングを設定する設定例も提供されています。

AEM Dispatcher との統合

URL の書き換えは、AEM Dispatcher HTTP サーバーで mod_rewrite モジュールを使用して行うこともできます。AEM プロジェクトアーキタイプには、生成されたサイズに対する基本的な書き換えルールが含まれている参照用 AEM Dispatcher 設定が用意されています。

Venia 参照用ストアプロジェクトには、製品ページとカテゴリページでのカスタム URL を使用方法を示す設定例が含まれています。これにより、各プロジェクトで、SEO のニーズに応じて、製品ページとカテゴリページの個々の URL パターンを設定できます。上記の CIF UrlProvider と Sling マッピングの組み合わせが使用されます。

メモ

この設定は、プロジェクトで使用する外部ドメインで調整する必要があります。Sling マッピングは、ホスト名とドメインに基づいて動作します。したがって、この設定はデフォルトで無効になっており、デプロイ前に有効にする必要があります。これを行うには、使用されているドメイン名に従って ui.content/src/main/content/jcr_root/etc/map.publish/https の Sling マッピング hostname.adobeaemcloud.com フォルダーの名前を変更し、resource.resolver.map.location="/etc/map.publish" をプロジェクトの JcrResourceResolver 設定に追加してこの設定を有効にします。

その他のリソース

このページ