ヘッダーをスキップ
Oracle® WebCenter Content Site Studioテクニカル・リファレンス・ガイド
11gリリース1 (11.1.1)
B72417-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

9 Idocスクリプト拡張機能

Site Studioでは、Webサイトを実行するために複数のIdocスクリプト拡張機能を使用します。


注意:

これらのスクリプト拡張機能は、Site Studioの各リリースで変更される可能性があります。

9.1 Idocスクリプト拡張機能について

Idocスクリプトは、Oracle Content Server用のサーバー側カスタムスクリプト言語です。変数の参照、HTMLページへの条件によるコンテンツのインクルードおよび問合せによって返される結果でのループを行えます。

コンポーネントがOracle Content Serverにインストールされると、コンポーネントによってIdocスクリプトと変数に拡張機能が追加され、更なるカスタマイズが可能になります。

Idocスクリプトは、主にHTMLテンプレートのプレゼンテーションと構成設定に使用されます。Site Studioコンポーネントによって、この項で説明する多くのスクリプト拡張機能が追加されます。

9.2 wcmPlaceholder

説明

wcmPlaceholder()関数は、コンテンツを含めるページ上の領域を定義します。プレースホルダが表示する実際のコンテンツは、プレースホルダに関連付けられているデータ・ファイル、サブテンプレートおよびその他のWebサイト・オブジェクトによって異なります。

パラメータ

同時に使用できないパラメータを使用する(たとえば、サブテンプレートとリージョン定義を指定するなど)と、スクリプトは、ここでリストされたパラメータの順序に基づいて実行します。

サンプル・コード

<!--$wcmPlaceholder("placeholderName")-->

<!--$wcmPlaceholder("placeholderName","dataFileDocName=dDocName", "templateDocName=[region template dDocName|subtemplate dDocName]","placeholderDefinitionDocName=dDocName",
"regionDefinitionDocName=dDocName", placeholderActions=EPRISUTMVN")-->

9.3 wcmElement

説明

wcmElement()スクリプトは、リージョン・テンプレートに要素を挿入します。要素は、リージョン定義にリストされる必要はありません。

このスクリプトによって、指定された要素に関連付けられているコンテンツをデータ・ファイルから取得できます。これは、WYSIWYG、イメージ、テキストおよびカスタム要素のみを対象とします。挿入される要素のコンテンツは、現在のレイアウト・ページの有効範囲で詳細に評価され、必要に応じて追加のサーバー側Idocスクリプトがインクルードされます。

パラメータ

サンプル・コード

<!--$wcmElement("elementName")-->

<!--$wcmElement("dDocName", "elementName")-->

9.4 wcmListStart

説明

この関数は、リスト要素の始まりを定義します。

パラメータ

サンプル・コード

<!--$wcmListStart("elementName")-->

9.5 wcmListEnd

説明

この関数は、リスト要素の終わりを定義します。

パラメータ

サンプル・コード

<!--$wcmListEnd("elementName")-->

9.6 wcmListElement

説明

これは、wcmElementと同じ機能ですが、静的リスト要素のコンテンツをリージョン・テンプレートに配置するためのものです。このスクリプトによって、指定された静的リスト要素に関連付けられているコンテンツをデータ・ファイルから取得できます。挿入される要素のコンテンツは、現在のレイアウト・ページの有効範囲で詳細に評価され、必要に応じて追加のサーバー側Idocスクリプトがインクルードされます。

パラメータ

サンプル・コード

<!--$wcmListElement("Wysiwyg", rowNum)-->

前述の例では、elementNameおよびrowNumのみ使用しています。

コンテキスト内の例:

<!--$wcmListStart("StaticList")-->
<!--$wcmListIndex = 0-->
<!--$wcmListNumRows = wcmListRowCount()-->
<table><!--$loopwhile wcmListIndex < wcmListNumRows-->
<tr>
<td><!--$wcmListElement("Wysiwyg", wcmListIndex)--></td>
<td><!--$wcmListElement("plaintext", wcmListIndex)--></td>
</tr>
<!--$wcmListIndex = wcmListIndex + 1-->
<!--$endloop--></table>
<!--$wcmListEnd("StaticList")-->

9.7 wcmListRowCount

説明

このスクリプトは、リスト要素の行の数を取得します。整数値が返されます。

パラメータ

サンプル・コード

<!--$wcmListRowCount("listName")-->

コンテキスト内の例:

<!--$wcmListStart("listName")-->
<!--$wcmListIndex = 0-->
<!--$wcmListNumRows = wcmListRowCount()-->
<table><!--$loopwhile wcmListIndex < wcmListNumRows-->
<tr>
<td><!--$wcmListElement("Wysiwyg", wcmListIndex)--></td>
<td><!--$wcmListElement("plaintext", wcmListIndex)--></td>
</tr>
<!--$wcmListIndex = wcmListIndex + 1-->
<!--$endloop--></table>
<!--$wcmListEnd("listName")-->

9.8 wcmDynamicList

説明

指定された動的リスト要素から検索パラメータを取得して、SS_GET_SEARCH_RESULTSをコールするためのサービス・バインダの準備をします。成功または失敗を示すブール値を返します。

パラメータ

戻り値

これは、成功または失敗を示すブール値を返します。

サンプル・コード

<!--$wcmDynamicList("elementName")-->

コンテキスト内の例:

<!--$if wcmDynamicList("dynamicList")-->
<!--$executeService("SS_GET_SEARCH_RESULTS")-->
<!--$loop SearchResults-->
<!--$xml(dDocTitle)--><br />
<!--$endloop-->
<!--$endif-->

9.9 wcmIncludeElement

説明

このスクリプトは、要素のコンテンツがリージョンのコンテキスト外に表示されることを許可します。要素がリージョンのコンテキスト(つまり、リージョン・テンプレート)にある場合、そのリージョン・テンプレートに基づいて暗黙的にデータ・ファイルが関連付けられます。

wcmIncludeElementを使用すると、要素がリージョンのコンテキスト外にある場合に強制的にデータ・ファイルを関連付けられます。

パラメータ

戻り値

要素のコンテンツが返されます。

サンプル・コード

queryVal = <!--$wcmIncludeElement("datafiledDocName", "wcm:root/wcm:element[@name='elementName']/node()")-->

9.10 wcmDynamicConversion

説明

ネイティブ・ドキュメントの動的変換の作成に使用されます。

パラメータ

戻り値

パラメータに基づいて動的変換で生成されたHTML。

サンプル・コード

デフォルトの使用:

<!--$wcmDynamicConversion("ruleName")-->

タイプ値のインクルード:

<!--$wcmDynamicConversion("ruleName","dataFileDocName=dDocName","pageNum=number","conversionsDefinitionDocName=dDocName", "conversionType=engine")-->

9.11 wcmGetListAsResultSet

説明

このタグは、静的リスト・コンテンツおよびResultSetとして使用可能なコンテンツの取得に使用されます。

パラメータ

戻り値

これは、成功または失敗を示すブール値を返します。

サンプル・コード

<!--$wcmGetListAsResultSet("dDocName","List_Element","name_of_ResultSet","false")-->
<!--$wcmGetListAsResultSet("List_Element", "name_of_ResultSet")-->

9.12 wcmFragment

説明

このタグは、フラグメントを追加するためにテンプレートで使用されます。タグがリージョン・テンプレートまたはサブテンプレートで使用される場合、最初のドロップポイント・スニペットのみが使用されます。

パラメータ

サンプル・コード

<!--$wcmFragment("fragmentInstanceID", "fragmentDocName", "fragmentID", "snippetID", "ssTheme=default", "ssHoverColor=", "ssTextColor=", "ssFocusColor=", "ssShowHome=true", "ssShowNext=false", "ssClassName=IDocNavTabsTop")-->

9.13 wcmUrl

説明

これは、すべてのリンク形式の作成に使用される単一スクリプトです。レガシー・サイトでは、Site Studioで使用可能な異なるタイプのリンクを生成するために3つの異なるスクリプトが必要でした。

パラメータ

サンプル・コード

セクションへのリンク: デフォルトでは、これらのリンクはindex.htmで終わります。

<!--$wcmUrl('nodelink',nodeId)-->
<!--$wcmUrl('nodelink',nodeId,siteId)-->

コンテンツへのリンク: デフォルトでは、これらのリンクはcontentIdで終わります。

<!--$wcmUrl('link','dDocName')-->
<!--$wcmUrl('link','dDocName','nodeId')-->
<!--$wcmUrl('link','dDocName",'nodeId','siteId')-->

イメージなどのweblayout静的リソースへのリンク:

<!--$wcmUrl('resource','dDocName')-->
<!--$wcmUrl('resource','groups/public/documents/adacct/mydocname.jpg')-->

9.40項「ssWeblayoutUrl」も参照してください。

DAMレンディションへのリンク:

<!--$wcmUrl('rendition', dDocName, 'smallimage')-->

9.14 ssIncludeXml

説明

このスクリプト拡張機能は、管理対象XMLファイル内の任意の要素を抽出してIdoc文字列変数で返すことができるSite Studioのコア・メソッドです。Idoc文字列変数は、HTMLスニペットとしてWebページ上に直接配置できます。抽出されるXMLノードのコンテンツは、現在のレイアウト・ページの有効範囲で詳細に評価され、必要に応じて追加のサーバー側Idocスクリプトがインクルードされます。

パラメータ

戻り値

Xpathにリストされた要素のコンテンツ。

サンプル・コード

<!--$ssIncludeXml("dDocName", "expression"-->

<!--$ssIncludeXml("dDocName", "wcm:portal/wcm:element[@name = "eleName"]/node()"-->

9.15 ssGetDocInfo

説明

このスクリプト拡張機能は、指定されたdDocNameのDOC_INFO結果セットを取得します。

パラメータ

戻り値

操作の成功を示すブール値。

サンプル・コード

<!--$ssGetDocInfo("MyDocName")-->

<!--$if ssGetDocInfo("MyDocName")-->
<!--$endif-->

9.16 ssGetXmlNodeCount

説明

このスクリプト拡張機能は、管理対象XMLファイルにおける特定の要素の反復インスタンスの数を返します。この拡張機能は、反復コントリビューション要素のセットを表示するために、静的リスト・フラグメントの実装で主に使用されます。

パラメータ

戻り値

リスト内の行の数を示す整数値。

サンプル・コード

<!--$ssGetXmlNodeCount("dDocName", "expression"-->

<!--$ssGetXmlNodeCount("dDocName", 'wcm:portal/wcm:element[@name = "eleName"]'-->

9.17 ssIncDynamicConversion

説明

このスクリプト拡張機能は、ネイティブ・ドキュメントの動的変換を実行するために使用できます。この変換で生成されるHTMLは、HTMLスニペットの形式でWebページ上に直接配置できるIdoc文字列変数で返されます。このメソッドでは、コール元は、使用する管理対象変換テンプレートおよび変換レイアウトを指定できます。

パラメータ

戻り値

ドキュメント変換のHTML文字列スニペット。

サンプル・コード

<!--$ssIncDynamicConversion("dDocName1", "dDocName2", "dDocName3", "3")-->

9.18 ssIncDynamicConversionByRule

説明

このスクリプト拡張機能は、ssIncDynamicConversion拡張機能と同様に、ネイティブ・ドキュメントの動的変換を実行するために使用できます。この変換で生成されるHTMLは、HTMLスニペットの形式でWebページ上に直接配置できるIdoc文字列変数で返されます。

ssIncDynamicConversionとは異なり、この拡張機能では、使用する変換テンプレートを決定するためにDynamic Converterルール・エンジンで指定されたルールを使用します。したがって、コール元は、管理対象変換テンプレートまたは変換レイアウトを指定する必要がありません。

パラメータ

戻り値

ドキュメント変換のHTML文字列スニペット。

サンプル・コード

<!--$ssIncDynamicConversionByRule("dDocName", "rule", "1")-->

9.19 ssIncDynamicConversionByRulesEngine

説明

このスクリプト拡張機能は、ssIncDynamicConversion拡張機能と同様に、ネイティブ・ドキュメントの動的変換を実行するために使用できます。この変換で生成されるHTMLは、HTMLスニペットの形式でWebページ上に直接配置できるIdoc文字列変数で返されます。

ssIncDynamicConversionとは異なり、この拡張機能では、使用する変換テンプレートを決定するために標準のDynamic Converterルール・エンジンを使用します。したがって、コール元は、管理対象変換テンプレートまたは変換レイアウトを指定する必要がありません。

パラメータ

戻り値

ドキュメント変換のHTML文字列スニペット。

サンプル・コード

<!--$ssIncDynamicConversionByRulesEngine("dDocName", "1")-->

9.20 ssIncInlineDynamicConversion

このスクリプト拡張機能は、ssIncDynamicConversion拡張機能と同様に、ネイティブ・ドキュメントの動的変換を実行するために使用できます。この変換で生成されるHTMLは、HTMLスニペットの形式でWebページ上に直接配置できるIdoc文字列変数で返されます。ssIncDynamicConversionとは異なり、この拡張機能では、動的変換用に空白の組込みテンプレートを使用するため、コール元は管理対象変換テンプレートまたは変換レイアウトを指定する必要がありません。

パラメータ

戻り値

ドキュメント変換のHTML文字列スニペット。

サンプル・コード

<!--$ssIncInlineDynamicConversion("dDocName", "1")-->

9.21 ssIsNativeDoc

説明

このスクリプト拡張機能は、管理対象ドキュメントが、動的変換を実行できるネイティブ・ドキュメントであるか、変換の不要なコントリビュータ・データ・ファイルであるかを検出するために使用できます。

比較はネイティブ・ドキュメントの選択テストではなく、データ・ファイルの除外テストです。yesという結果が返された場合、ドキュメントはデータ・ファイルではないとみなされたということです。

パラメータ

戻り値

ブール値[1 | 0]。

サンプル・コード

<!--$Variable = ssIsNativeDoc("dDocName")-->

9.22 ssRandom

説明

このスクリプト拡張機能は、乱数を生成するために使用します。

パラメータ

パラメータはありません。

戻り値

負ではない整数の乱数。

サンプル・コード

<!--$ssRandom()-->
<!--$Variable = ssRandom()-->

9.23 ssGetNodeProperty

説明

このスクリプト拡張機能は、現在のセクションまたは明示的に指定したセクションのノード・プロパティを取得するために使用できます。通常は、カスタム・ノード・プロパティへのアクセスに使用します。

パラメータ

戻り値

指定されたプロパティの値を返します。"label"が使用された場合、セクション・ラベルが返されますが、他のプロパティも指定できます。

サンプル・コード

たとえば、次のコマンドでは、現在のセクションのセクション・ラベルを取得します。

<!--$ssGetNodeProperty('label')-->

また、次のコマンドでは、セクション474のセクション・ラベルを取得します。

<!--$ssGetNodeProperty('474', 'label') -->

9.24 ssGetWebsiteNodeType

説明

このスクリプト拡張機能は、サイト・ノード(階層のルート)と通常のセクション・ノードの違いを判別するために使用できます。また、ASPサイトとASP以外のサイト(またはセクション・ノード)の違いも判別できます。

パラメータ

戻り値

戻り値は次のいずれかです。

サンプル・コード

<!--$ssGetWebsiteNodeType("siteId", "nodeId")-->
<!--$Variable = ssGetWebsiteNodeType("nodeId")-->

9.25 ssGetCoreMajorVersion

説明

このスクリプト拡張機能は、基礎となるコンテンツ・サーバーのメジャー・バージョンを取得するために使用できます。

パラメータ

パラメータはありません。

戻り値

Oracle Content Serverのメジャー・バージョン番号。

サンプル・コード

<!--$Variable = ssGetCoreMajorVersion()-->

9.26 ssSplitString

説明

このスクリプト拡張機能は、指定したデリミタに基づいて文字列をセグメントに分割するために使用できます。

パラメータ

戻り値

戻り値は、指定した文字列から切り出されたセグメントの数を示す整数です。この拡張機能では、分割文字列をリストしたStringという名前の1つの列を持つResultSetも生成されます。

サンプル・コード

<!--$ssSplitString("ABC;123;XYZ" , ";" , "StorageRows")-->

9.27 ssGetWebsiteName

説明

このスクリプト拡張機能は、コンテンツ・サーバーで任意のWebサイトのWebサイト名を取得するために使用できます。

パラメータ

パラメータは次のとおりです。

戻り値

siteIdのWebサイト名(ラベル)。

サンプル・コード

<!--$ssGetWebsiteName("siteId")-->

9.28 ssGetSiteProperty

説明

このスクリプト拡張機能は、コンテンツ・サーバーで任意のWebサイトのサイト・プロパティを取得するために使用できます。

パラメータ

戻り値

propertyNameにリストしたプロパティ(文字列)。

サンプル・コード

<!--$ssGetSiteProperty("siteId" , "propertyName")-->

9.29 ssGetFirstNodeId

説明

このスクリプト拡張機能は、コンテンツ・サーバーで任意のWebサイトのルート・ノードの識別子(nodeId)を取得するために使用できます。

パラメータ

戻り値

最初のノードのID。

サンプル・コード

<!--$Variable = ssGetFirstNodeId("siteId")-->

9.30 ssGetRelativeNodeId

説明

このスクリプト拡張機能は、特定のノードを基準としてノードの識別子(nodeId)を取得するために使用できます。

パラメータ

戻り値

コンテキスト・ノードと指定された関係を持つノードのnodeId。指定された関係を持つノードがない場合、空の文字列。

サンプル・コード

<!--$Variable = ssGetRelativeNodeId("siteId" , "nodeId" , "child" , "no")-->

9.31 ssLoadSiteNavResultSet

説明

このスクリプト拡張機能は、コンテンツ・サーバーの任意のWebサイトに対応するアクティブ階層を含むSiteStudioNavNodesというResultSetを、Idoc実行環境に作成するために使用できます。

パラメータ

戻り値

SiteStudioNavNodesと呼ばれるWebサイト階層のResultSet。

"SiteStudioNavNodes" ResultSetは、構成フラグSSAdditionalNavResultSetFieldsの設定に応じて5つ以上の列を持ちます(詳細は、12.14項「SSAdditionalNavResultSetFields」を参照)。

サンプル・コード

<!--$ssLoadSiteNavResultSet("siteId")-->

9.32 ssGetServerRelativeUrl

説明

このスクリプト拡張機能は、指定したノードのプライマリ・レイアウトに対するサーバー相対URLを生成するために使用できます。この相対URLには、末尾のurlPageName(通常はindex.htm)が含まれます。

パラメータ

戻り値

サーバーを基準とした完全フレンドリURL。

サンプル・コード

<!--$ssGetServerRelativeUrl("siteId" , "nodeId")-->

9.33 ssGetServerRelativePath

説明

このスクリプト拡張機能は、指定したノードのプライマリ・レイアウトに対するサーバー相対URLを生成するために使用できます。この相対URLには、末尾のurlPageName(通常はindex.htm)は含まれません。

パラメータ

戻り値

ページ名を含まない、サーバーを基準とした完全フレンドリURL。

サンプル・コード

<!--$ssGetServerRelativePath("siteId" , "nodeId")-->

9.34 ssGetUrlPageName

このスクリプト拡張機能は、指定したノードのurlPageNameを取得するために使用できます。

パラメータ

戻り値

ノードのurlPageName。通常これはindex.htmです。

サンプル・コード

<!--$ssGetUrlPageName("siteId")-->

9.35 ssGetNodeLabel

説明

このスクリプト拡張機能は、指定したノードのラベルを取得するために使用できます。

パラメータ

戻り値

指定されたノードのラベル。

サンプル・コード

<!--$ssGetNodeLabel("siteId" , "nodeId")-->

9.36 ssGetNodeLabelPath

説明

このスクリプト拡張機能は、GUIラベルに使用できる、Webサイトのルートを基準とする「/」区切りの文字列(/products/servers/web serverなど)を取得するために使用できます。

パラメータ

戻り値

スクリプトは、指定されたWebサイトの指定されたノードのフォルダを表す"/"で区切られた文字列を返します。

サンプル・コード

<!--$ssGetNodeLabelPath("siteId" , "nodeId")-->

9.37 ssGetAllSites

説明

このスクリプト拡張機能は、使用可能なすべてのWebサイトのリストを含むResultSetを生成するために使用できます。

パラメータ

戻り値

サーバー上の使用可能なすべてのWebサイトのリストがResultSetで返されます。

サンプル・コード

<!--$ssGetServerRelativePath("resultSetName")-->

9.38 ssLink

説明

このスクリプト拡張機能は、指定されたドキュメントに対するパス・ベースのURLを生成するために使用します。これは非推奨で、wcmUrlが推奨されます(9.13項「wcmUrl」を参照)。

詳細は、4.3項「サーバー側スクリプト・リンクの使用」を参照してください。

パラメータ

戻り値

特定のコンテンツの断片へのフレンドリ・リンクである文字列。

サンプル・コード

<!--$ssLink("dDocName" , "targetSiteId")-->
<!--$ssLink("dDocName")-->
<!--$ssLink("dDocName" , "targetNodeId" , "targetSiteId")-->

9.39 ssNodeLink

説明

このスクリプト拡張機能は、指定したノードに対するパス・ベースのURLを生成するために使用します。これは非推奨で、wcmUrlが推奨されます(9.13項「wcmUrl」を参照)。

詳細は、4.3項「サーバー側スクリプト・リンクの使用」を参照してください。

パラメータ

戻り値

ノードのプライマリ(ランディング)ページのフレンドリ・リンク。

サンプル・コード

<!--$ssNodeLink("nodeId" , "siteId")-->
<!--$ssNodeLink("nodeId")-->

9.40 ssWeblayoutUrl

説明

このスクリプト拡張機能は、パスまたはdDocNameからファイルの完全なWebアドレスを特定するために使用します。この拡張機能は、通常、データ・ファイルのイメージへのパスに対して使用されます。これは非推奨で、wcmUrlが推奨されます(9.13項「wcmUrl」を参照)。

詳細は、4.3項「サーバー側スクリプト・リンクの使用」を参照してください。

パラメータ

戻り値

パス・ベースのweblayout URL。

サンプル・コード

<!--$ssWeblayoutUrl('mydocname')-->
<!--$ssWeblayoutUrl('groups/public/documents/adacct/mydocname.jpg')-->