この章では、クラシックHTML変換レイアウト・テンプレートの作成と使用について説明します。
この章の内容は、次のとおりです。
レイアウト・テンプレートは、クラシックHTML変換テンプレートを補足するために使用します(第31章「HTML変換テンプレート」を参照)。Webページ上のアイテム、特に変換済ドキュメントの外側の領域の配置を制御できます。レイアウト・テンプレートには、共通の枠線、ナビゲーション、カスタム・スクリプトなどを追加できます。レイアウト・テンプレートを使用して、変換済ドキュメントの周囲にリンクの共通セット(追加のリソースなど)を作成することも、Idoc Scriptのヘッダーおよびフッターのタグを使用して、ドキュメントの周囲にContent Serverのルック・アンド・フィールを維持することもできます。
「テンプレートの選択ルール」ページでレイアウト・テンプレートを指定しない場合、ユーザーがコンテンツ・サーバー・インタフェースで(HTML)リンクをクリックすると、Webブラウザのスクリーン領域全体に変換済ドキュメントが表示されます(第35.2項を参照)。
サンプルのdefault_layout.txt
などのレイアウト・テンプレートを指定すると、コンテンツ・アイテムの周囲に一貫したルック・アンド・フィールを追加できます。
一般的なレイアウト・テンプレートには、次の部分が存在します。
HTMLのトップ情報と見出し情報
HTMLの表(ページ・レイアウトの制御に使用)
テンプレート設定用のトークン(第32.3項を参照)
Idoc Scriptコード(様々な目的で使用)
これらを組み合せることで、変換済ドキュメントの外観をグローバル・レベルで微調整でき、本格的で一貫したルック・アンド・フィールでオンライン情報を提供できます。
トークンは、テンプレート・エディタで作成するクラシックHTML変換テンプレートを設定する際に使用するプレースホルダまたは変数です。レイアウト・テンプレートは、変換済ドキュメントの周囲のアイテムの配置を制御するために使用します。クラシックHTML変換テンプレート(レイアウト・テンプレートはクラシックHTML変換テンプレートと一緒に使用することが非常に多いことに注意してください)の特定のTOP設定またはHEAD設定を組み込む場合、通常はその情報をコピーしてレイアウト・テンプレート(HTMLのTOPタグまたはHEADタグ)に貼り付ける必要があります。トークンを使用すると、クラシックHTML変換テンプレート設定でそのスペースを予約できます。
次の4つのトークンが用意されています。
<!--TRANSIT - CUSTOMLAYOUT(TOP)-->
このトークンは、レイアウト・テンプレートの先頭の<HTML>タグの前に配置します。テンプレートではこの値を、W3Cドキュメント・タイプ識別子などのHTML宣言で置き換えることができます。
<!--TRANSIT - CUSTOMLAYOUT(HEAD)-->
このトークンは、<HEAD>タグで囲まれている部分に配置します。テンプレートではこの値を、Webページのタイトル、メタ・タグ・キーワードなどで置き換えることができます。
%%TRANSIT-BODYATTRIBUTES%%
このトークンは、<BODY>タグ内に配置します。テンプレートではこの値を、背景色、テキストの色、リンクの動作などで置き換えることができます。
<!-- TRANSIT - CUSTOMLAYOUT(BODY) -->
このトークンは、Webページ上で実際のコンテンツ・アイテムを表示する場所に配置します。通常は、レイアウト・テンプレートの中央のどこかに配置します。テンプレートではこの値を、各コンテンツ・アイテムで置き換えます。コンテンツ・アイテムを別のWebページに組み込むことができるように、このトークンを単独で使用して最小のHTML出力を生成できます。第34章「HTMLスニペット」を参照してください。
豊富なサンプル・レイアウト・テンプレートをOracle Technology Network(http://www.oracle.com/technetwork/indexes/samplecode/
)からダウンロードできます。ダウンロードしたサンプルは、コンテンツ・サーバーにチェックインしてから、使用し始めます。
次のサンプル・レイアウト・テンプレートが用意されています。
default_layout.txt
テンプレートは、Idoc ScriptとHTMLの表を使用して、変換済ドキュメントの周囲に、コンテンツ・サーバーの枠線とナビゲーションを表示します。
default_layout.txt
レイアウト・テンプレートには、次のコードが組み込まれています。
<html> <head> <!-- TRANSIT - CUSTOMLAYOUT(HEAD) --> <$defaultPageTitle="Converted Content"$> <$include std_html_head_declarations$> </head> <$include body_def$> <$include std_page_begin$> <$include std_header$> <table border="0" cellpadding="0" cellspacing="0" width="550"> <tr><td> <!-- TRANSIT - CUSTOMLAYOUT(BODY) --> </td></tr> </table> <$include std_page_end$> </body> </html>
snippet_layout.txt
テンプレートは、HTMLマークアップのトップ、見出しまたは本体を使用しないで、変換済ドキュメントをWebページ上に配置します。結果はレイアウト・テンプレートが関連付けられていない場合と非常によく似ていますが、この場合、このコンテンツをHTMLスニペットとして簡単に抽出して、別のWebページ、場合によってはポータル・サイトに、組み込むことができるという利点があります。
snippet_layout.txt
レイアウト・テンプレートは、次の1行のコードで構成されています。
<!-- TRANSIT - CUSTOMLAYOUT(BODY) -->
これは、Webページ上に実際のコンテンツ・アイテムを表示するトークンです。ここでは単独で使用されているため、別のWebページまたはHTMLスニペット(第34章「HTMLスニペット」を参照)に組み込むことができる最小のHTML出力が生成されます。
スニペットのデモ
snippet_demo.hcst
サンプルには、ボーダーとナビゲーションを維持しながら、コンテンツ・サーバーに保存されている他のコンテンツ・アイテムから情報(HTMLスニペット)を描画する、ポータルスタイルのWebページの基本要素が含まれています。
snippet_demo.hcst
サンプルには、次のコードが含まれています。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>This is my incDynConv script test page</title> <meta name="GENERATOR" content="Dynamic Converter"> <$defaultPageTitle="Converted Content"$> <$include std_html_head_declarations$> </head> <$include body_def$> <$include std_page_begin$> <$include std_header$> This is a sample page that shows how to include multiple snippets of dynamically<br> converted content on a single page using the new Idoc function incDynamicConversion. <table border="1" cellpadding="0" cellspacing="0" width="550"> <tr> <td> <$incDynamicConversion("<source_contentID_1>","latest","<template_contentID_1>","snippet_layout")$> </td> <td> <$incDynamicConversion("<source_contentID_2>","latest","<template_contentID_2>","snippet_layout")$> </td> </tr> <tr> <td colspan=2> <$incDynamicConversion("<source_contentID_3>","latest","<template_contentID_3>","snippet_layout")$> </td> </tr> </table> <$include std_page_end$> </body> </html>
レイアウト・テンプレートを作成および編集するには:
テキスト・エディタまたはWYSIWYGツールで新しいレイアウト・テンプレートを作成します。レイアウト・テンプレートの内容の詳細は、第32.2項を参照してください。
ヒント: 出発点として使用できる豊富なサンプル・レイアウト・テンプレートをOracle Technology Network( |
「Dynamic Converterの管理」ページを開きます。
「既存のテンプレートのチェックイン」をクリックし、既存のテンプレートをチェックインする手順を実行します(第30.4項を参照)。テンプレート・タイプとしてレイアウト・テンプレートを選択していることを確認します。
「Dynamic Converterの管理」ページに戻ります。
レイアウト・テンプレートとテンプレート・ルールを関連付けます(第32.6項を参照)。
「テンプレートの選択ルール」ページで、特定のレイアウト・テンプレートとテンプレート・ルールを関連付けることができます。次の例では、default_layoutというテンプレート・サンプルが選択されています。
テンプレート・ルールにレイアウト・テンプレートを指定するには:
「Dynamic Converterの管理」ページを開きます。
「テンプレートの選択ルール」をクリックします。
「テンプレートの選択ルール」ページで、レイアウト・テンプレートを指定するルールをハイライトします。
(「選択したルールのテンプレートとレイアウト」見出しの)「レイアウト」テキスト・ボックスにレイアウトのコンテンツIDを入力します。「使用できるレイアウト」メニューからレイアウト・テンプレートを選択することもできます。
ページの下部にある「更新」をクリックします。
レイアウト・テンプレートを特定のテンプレート・ルールと関連付けるだけでなく、定義されているテンプレート条件を満たさないすべてのコンテンツ・アイテムに適用するデフォルト・レイアウトも指定できます。デフォルト・レイアウトは、「Dynamic Converterの構成」ページで指定できます。図32-5では、「default_layout」というタイトルのテンプレート・サンプルが選択されています。
コンテンツ・アイテムに関連付けるデフォルト・レイアウト・テンプレートを設定するには:
「Dynamic Converterの管理」ページを開きます。
「構成設定」をクリックします。
「Dynamic Converterの構成」ページの「デフォルト・レイアウト」見出しで、「レイアウト」テキスト・ボックスにレイアウト・テンプレートのコンテンツIDを入力します。また、「使用できるレイアウト」メニューから、レイアウト・テンプレートを選択することもできます。
ページの下部にある「更新」をクリックし、デフォルト・テンプレートを有効にします。
コンテンツ・アイテムに関連付けられているレイアウト・テンプレートには、カスタム・スクリプト、イメージ、カスケーディング・スタイルシート(CSS)などの他のファイルへの参照が組み込まれている可能性があります。実際、旧バージョンのDynamic Converterで作成されたスクリプト・テンプレートが大量に存在する場合、それらのテンプレートからIdoc Scriptタグをコピーして、新しいレイアウト・テンプレートに貼り付けることができます。詳細は、第33章「スクリプト・テンプレートの管理」を参照してください。
コンテンツ・サーバーにチェックインされている各コンテンツ・アイテムは、そのメタデータが変更されると保存場所が変更される可能性があるので(コンテンツ・アイテムのURLは最終的にはメタデータによって決定されます)、組み込まれているファイルに使用する適切なパスを特定することが困難になる可能性があります。したがって、新しいコンテンツ・アイテムは、割り当てられたメタデータと一緒にコンテンツ・サーバーにチェックインされるまで、そのアドレスが不明です。
このタイプの環境では、相対パスはすぐに問題を起こします。コンテンツ・サーバーのどこからでも動作するパスを使用する必要があります。解決策のリストは、第36.7項を参照してください。
注意: デフォルト・レイアウト・テンプレートをコンテンツ・アイテムに割り当てる手順は、第28.2項を参照してください。旧バージョン(バージョン6以前)のDynamic Converterでは、デフォルト・レイアウトは、コンテンツ・サーバーでの構成変数として割り当てられていました。現在は、「Dynamic Converterの構成」ページでこの設定を実行できます。 |