AEM では、画像、.js ファイルおよび .css ファイルを含む完全な Web ページとしてページを書き出すことができます。
書き出しを設定したら、次の代わりに html
と export.zip
URL 内に、html 形式でレンダリングされたページと参照元のアセットを含む zip ファイルのダウンロードが含まれています。 ページ内のすべてのパス(画像へのパスなど)は、zip ファイルに含まれるファイルまたはサーバー上のリソースを指すように書き換えられます。
次の手順では、ページを書き出す方法を説明し、サイトに書き出し設定テンプレートが存在すると仮定します。設定テンプレートは、ページの書き出し方法を定義し、サイトに固有のものです。設定テンプレートを作成するには、 サイト用のページエクスポーター設定の作成 」セクションに入力します。
ページを書き出すには:
ブラウザーで、ページを開きます。次に例を示します。
http://localhost:4502/content/geometrixx/en/products/triangle.html
ページのプロパティダイアログを開き、「詳細」タブを選択して、「書き出し」フィールドセットを展開します。
虫眼鏡のアイコンをクリックして設定テンプレートを選択します。Geometrixx サイトのデフォルトである geometrixx テンプレートを選択します。「OK」をクリックします。
「OK」をクリックしてページのプロパティダイアログを閉じます。
次を置き換えてページをリクエスト html
と export.zip
」と入力します。
をダウンロードします。 <page-name>.export.zip
ファイルをファイルシステムに保存します。
ファイルシステムで、ファイルを解凍します。
<page-name>.html
) は、以下で利用できます。 <unzip-dir>/<page-path>
<unzip-dir>/etc
の一部 <unzip-dir>/<page-path>
.ページの html ファイル ( <unzip-dir>/<page-path>.html
) をブラウザーでクリックして、レンダリングを確認します。
ページエクスポーターは、コンテンツ同期フレームワークに基づいています。ページのプロパティダイアログで使用できる設定は、設定テンプレートです。ページに必要な依存関係をすべて定義します。ページの書き出しがトリガーされると、設定テンプレートが使用され、ページパスとデザインパスの両方が設定に動的に適用されます。zip ファイルは、その後、標準のコンテンツ同期機能を使用して作成されます。
AEM では、以下を含むいくつかのテンプレートが埋め込まれます。
デフォルトは /etc/contentsync/templates/default
.このテンプレート:
専用の Geometrixx サイト、 /etc/contentsync/templates/geometrixx
.このテンプレートは、新しいテンプレートを作成する例として使用できます。
ページエクスポーター設定テンプレートを作成するには:
In CRXDE Lite、以下にノードを作成します。 /etc/contentsync/templates
:
mysite
.この名前は、ページエクスポーターテンプレートを選択する際に、ページのプロパティダイアログに表示されます。nt:unstructured
テンプレートノード(ここでは mysite
)の下に、以下で説明する設定ノードを使用してノード構造を作成します。
設定テンプレートは、ノード構造で構成されます。 各ノードには type
zip ファイルの作成プロセスで特定のアクションを定義するプロパティ。 type プロパティの詳細については、コンテンツ同期フレームワークページの設定タイプの概要の節を参照してください。
書き出し設定テンプレートを作成するには、以下のノードを使用できます。
ページノード ページノードは、ページの html を zip ファイルにコピーするために使用されます。 これには次のような特徴があります。
/etc/contentsync/templates/<sitename>
.page
.nt:unstructured
page
ノードには以下のプロパティがあります。
A type
プロパティに値を設定 pages
.
path
プロパティはありません。現在のページパスが設定に動的にコピーされます。
その他のプロパティについては、コンテンツ同期フレームワークの設定タイプの概要の節で説明します。
書き換えノード rewrite ノードは、書き出されたページでリンクを書き換える方法を定義します。 書き換え後のリンクは、zip ファイルに含まれるファイルまたはサーバー上のリソースを指すことができます。
rewrite
ノードについて詳しくは、コンテンツ同期ページを参照してください。
デザインノード デザインノードは、書き出したページに使用するデザインをコピーするために使用されます。 これには次のような特徴があります。
/etc/contentsync/templates/<sitename>
.design
.nt:unstructured
.design
ノードには以下のプロパティがあります。
A type
プロパティを値に設定 copy
.
path
プロパティはありません。現在のページパスが設定に動的にコピーされます。
汎用ノード 汎用ノードは、clientlibs .jsや.css ファイルなどのリソースを zip ファイルにコピーするために使用します。 これには次のような特徴があります。
/etc/contentsync/templates/<sitename>
.nt:unstructured
.type
プロパティおよび任意 type
コンテンツ同期フレームワークの「設定タイプの概要」節で定義される関連プロパティ。例えば、以下の設定ノードでは、geometrixx クライアントライブラリの .js ファイルを zip ファイルにコピーします。
"geometrixx.clientlibs.js": {
"extension": "js",
"type": "clientlib",
"path": "/etc/designs/geometrixx/clientlibs",
"jcr:primaryType": "nt:unstructured"
}
Geometrixx ページ書き出し設定テンプレートを見ると、ページ書き出しの設定方法がわかります。テンプレートのノード構造をブラウザーで json 形式で表示するには、以下の URL を要求します。
http://localhost:4502/etc/contentsync/templates/geometrixx.-1.json
カスタム設定の実装
ノード構造でご存じのように、 Geometrixx ページ書き出し設定テンプレートに logo
ノード type
プロパティを image
. これは、画像のロゴを zip ファイルにコピーするために作成された特別な設定タイプです。 特定の要件を満たすには、カスタム type
プロパティ:その場合は、コンテンツ同期ページのカスタム更新ハンドラーの実装の節を参照してください。
プログラムによってページを書き出すには、PageExporter OSGI サービスを使用できます。このサービスを使用すると、次のことが可能です。
export
セレクターおよび zip
拡張子にバインドされているサーブレットは PageExporter サービスを使用します。
zip ファイルのダウンロードで問題が発生した場合は、 /var/contentsync
ノードを作成し、書き出しリクエストを再度送信します。