オブジェクト索引
Folder オブジェクトはページが置かれているフォルダを表すオブジェクトです。Folder オブジェクトを通して、そのフォルダに置かれているページの一覧や、そのフォルダまでのトップのフォルダからのパス、フォルダの名称など、展開を作成する上で有用な情報を取得することができます。
Folder オブジェクトは、主に下記の方法で取得可能です。
下記のコード例は、Folder オブジェクトを経由して、ページの置かれているフォルダの名前を取得して表示します。
<body>
......
このページは、フォルダ「%folder().folderName()%」に置かれています。
......
</body>
下記のコード例は、Folder オブジェクトを通して、同じフォルダに置かれている(自分を含む)ページの一覧を取得し、そのタイトルをリストしています。
<ul>
<wr-for list="folder().allPages()" variable="aPage">
<li>%pageTitle(aPage)%</li>
</wr-for>
</ul>
メソッド名 | 説明 |
---|---|
allObjects() | フォルダ内のページとフォルダの一覧を返す |
allPages() | フォルダ内のページの一覧を返す |
directory() | フォルダの公開サーバ上でのディレクトリパスを返す |
directoryName() | フォルダの公開サーバ上でのディレクトリ名を返す |
folder() | フォルダが置かれている親フォルダを返す |
folderName() | フォルダの名称を返す |
folderPath() | トップフォルダからのパスを返す |
folderWithFolderName(folderName) | 指定されたフォルダ名を持つサブフォルダを返す |
indexOfObject() | 親フォルダの中で何番目に位置しているかを返す |
isFirstObject() | 親フォルダの中で先頭に置かれているか判定する |
isFolder() | オブジェクトが Folder なのかを判定する |
isLastObject() | 親フォルダの中で最後に置かれているか判定する |
isNotRootFolder() | トップ(最上位)のフォルダであるか判定する |
isPage() | オブジェクトが Page なのか(= Folder でないか)を判定する |
isRootFolder() | トップ(最上位)のフォルダであるか判定する |
nextObject(wrap) | ひとつ後ろに位置するページまたはフォルダを返す |
pageWithFileName(fileName) | フォルダ内で、指定されたファイル名を持つページを返す |
pageWithFileNameRex(regex) | フォルダ内で、指定されたファイル名を持つページを返す(指定は正規表現) |
pageWithPageTitle(title) | フォルダ内で、指定されたページタイトルを持つページを返す |
pageWithPageTitleRex(regex) | フォルダ内で、指定されたページタイトルを持つページを返す(指定は正規表現) |
prevObject(wrap) | ひとつ前に位置するページまたはフォルダを返す |
rootFolder() | トップのフォルダを返す |
subFolders() | フォルダ内にあるサブフォルダの一覧を返す |
totalObjects() | フォルダ内にあるページとフォルダの数を返す |
totalPages() | フォルダ内にあるページの数を返す |
フォルダに置かれているページとフォルダの一覧を返します。返される値は Page オブジェクトと Folder オブジェクトが混在する列(リスト)です。
allObjects() メソッドの戻り値中のページとフォルダの並び順は、ページ一覧画面でのページとフォルダの表示順序と同じです。
フォルダ中に Versioning Folder があり、その Versioning Folder 中に、コンテンツ生成時刻に該当するページがある場合、そのページが戻り値のリストに含まれます。Versioning Folder が Folder オブジェクトとして戻り値に含まれることはありません。
あるページが置かれているフォルダに置かれている、すべてのページとフォルダの一覧を表示してみます。フォルダは、行末に '/' を付けて表示します。
<body>
........
<wr-for list="folder().allObjects()" variable="pageOrFolder">
<wr-if condition="pageOrFolder.isFolder()">
%pageOrFolder.folderName()%/<br />
</wr-if>
<wr-if condition="pageOrFolder.isPage()">
%pageTitle(pageOrFolder)%<br />
</wr-if>
</wr-for>
........
</body>
フォルダに置かれているページの一覧を返します。返されるリストは Page オブジェクトの列(リスト)です。
allPages() メソッドの戻り値中のページの並びはページ一覧画面でのページの表示順序と同じです。
WTL 2.4 以前は、allPages() メソッドの戻り値のリストには、フォルダ中にある Versioning Folder に置かれているページが含まれることはありませんでしたが、WTL 2.5 からは Versioning Folder 中にコンテンツ生成時刻に該当するページがある場合、そのページが含まれるようになりました。
ページが置かれているフォルダにある全ページの一覧を表示してみます。
<body>
........
<wr-for list="folder().allPages()" variable="aPage">
%pageTitle(aPage)%<br />
</wr-for>
........
</body>
folder() 関数で、ページが置かれているフォルダを取得します。取得した Folder オブジェクトの allPages() メソッドを呼び出してフォルダに置かれている全ページの一覧を取得してリスト表示しています。
directory() メソッドは、フォルダの公開サーバ上でのディレクトリパスを返します。
directory() 関数が返すパスは、そのフォルダに置かれているページが公開サーバ上で公開された場合の URL から、そのページのファイル名と、http(s)://<hostname>/ 部分を除去した残りの部分に相当します。
返されるパスは、いつも '/' で始まり、 '/' で終わる文字列です。
返されるパスは、展開中のチャネルに応じたものになります。例えば、サブディレクトリ型のチャネル「mobile」のディレクトリが 「/m」と指定されている場合、このメソッドは、例えば、「/m/....」という形式のパスを返します。
このメソッドは、常に公開サーバ上のディレクトリパスを返します。プレビュー中でも公開サーバ上のディレクトリパスが返されます。
ページが公開される公開サーバ上でのフォルダを表示してみます。
<body>
...
このフォルダ中のページは公開サーバ上の %folder().directory()% に配信されます。
...
</body>
directoryName() メソッドは、フォルダの公開サーバ上でのディレクトリ名を返します。
directoryName() 関数が返すディレクトリ名は、そのフォルダに置かれているページが公開サーバ上で公開される場合のディレクトリ名を返します。directory() メソッドがパスを返すのに対し directoryName() メソッドはパスの最後のディレクトリ名を返します。
このメソッドは、常に公開サーバ上のディレクトリパスを返します。プレビュー中でも公開サーバ上のディレクトリパスが返されます。
ページが公開される公開サーバ上でのフォルダを表示してみます。
<body>
...
このフォルダ中のページは公開サーバ上の %folder().directoryName()% に配信されます。
...
</body>
この Folder オブジェクトが置かれている親フォルダを返します。返される値は Folder オブジェクトです。 トップのフォルダに対してこのメソッドを呼び出すと null が返されます。あるフォルダがトップのフォルダかどうか調べる場合には isRootFolder() メソッドを使ってください。
ページが置かれているフォルダの、さらに親フォルダの名前を表示します。
<body>
....
このページの置かれているフォルダの親フォルダは「%folder().folder().folderName()%」です。<br/>
....
</body>
最初の folder() はフォルダを取得する関数の呼び出しです。これにより、このページが置かれているフォルダを取得しています。取得した Folder オブジェクトに対してさらに folder() メソッドを呼び出すことで親フォルダを取得しています。取得した親フォルダの名称は folderName() メソッドで取得します。
親フォルダへのリンクを表示してみます。
<body>
........
<wr-if condition="folder().isRootFolder() != true">
<wr-variable name="parent" value="folder().folder().pageWithFileName(\"index.html\")" />
<wr-if condition="isNotNull(parent)">
<a href="%parent%">%pageTitle(parent)%へ</a><br />
</wr-if>
</wr-if>
........
</body>
まず、自分がトップレベルのフォルダではないことを isRootFolder() メソッドでチェックします。
その上で、親フォルダにある index.html という名前を持つページを探し、そのページの Page オブジェクトを parent という名前の変数にいれておきます。もし該当するページがあったならば、そのページのタイトルを表示してリンクをはります。
フォルダの名称を返します。
ページが置かれているフォルダの名称を表示してみます。
<body>
........
このページの置かれているフォルダは「%folder().folderName()%」です。<br/>
........
</body>
トップフォルダからこのフォルダに至るまでのフォルダのパスを返します。返される値は Folder オブジェクトの列(リスト)です。
ページの置かれているフォルダまでのパスをパン屑リスト風に表示します。
<body>
....
<wr-for list="folder().folderPath()" variable="aFolder" index="ix">
<wr-if condition="ix != 0">→ </wr-if>
%aFolder.folderName()%
</wr-for>
<br />
....
</body>
トップフォルダの前には → を表示しないように wr-for の最初のループかどうかを ix の値でしらべ、wr-if によって → を表示するかどうかを判定しています。
ページの置かれているフォルダまでのパスをパン屑リスト風に表示します。この例では、フォルダに置かれているページの中に index.html というフィル名のページがある場合に限り、そのフォルダをパン屑リストに掲載するように改良してあります。また、パン屑リストの各エントリには、そのフォルダの index.html のページのリンクを付けます。
<wr-variable name="pageList" />
<wr-for list="folder().folderPath()" variable = "aFolder">
<wr-if condition="isNotNull(aFolder.pageWithFileName(\"index.html\"))">
<wr-append name="pageList" value="aFolder.pageWithFileName(\"index.html\")" />
</wr-if>
</wr-for>
<wr-for list="pageList" variable="aPage" index="ix">
<wr-if condition="ix != 0">→ </wr-if>
<a href="%aPage%">%aPage.folder().folderName()%</a>
</wr-for>
<br />
変数 pageList を宣言しています。始めに、index.html というファイル名のページだけを pageList に集めます。その後でパン屑リストを描いています。
folderWithFolderName() メソッドは、このフォルダに置かれているサブフォルダで、指定されたフォルダ名を持つフォルダを探して返します。返される値は Folder オブジェクトです。該当するフォルダがない場合には null を返します。
探したいフォルダの名前を指定します。
このページが置かれているフォルダの直下に「アーカイブ」というサブフォルダがあると仮定しています。また、その「アーカイブ」フォルダには index.html というファイル名を持つページがひとつ存在していると仮定しています。その状況で「アーカイブ」サブフォルダ中の index.html というファイル名を持つページに対してリンクを作成しています。
<body>
....
<a href="%folder().folderWithFolderName("アーカイブ").pageWithFileName("index.html")%">アーカイブ</a>
....
</body>
ページが置かれているフォルダに対して folderWithFolderName() メソッドを呼び出し「アーカイブ」という名前を持つフォルダを入手します。そのフォルダに対して pageWithFileName() メソッドを呼び出して index.html というファイル名をもつページを見つけ出し、そこへのリンクを作成しています。
このフォルダが置かれているフォルダ中にあるページとフォルダの中で、このフォルダが先頭から何番目に位置しているかを返します。先頭の場合には 0 が返されます。最後の場合には、フォルダに置かれているフォルダとページの数から1を引いた値が返されます。
ページとフォルダの並び順は、ページ一覧画面でのページとフォルダの表示順序と同じです。
戻り値はゼロオリジンです。フォルダが先頭にあるときには 0 が返されます。
ページが置かれているフォルダが、その親フォルダ中で何番めに位置しているかを表示してみます。
<body>
........
このページが置かれているフォルダは先頭から %folder().indexOfObject() + 1%番めに位置しています。<br/>
........
</body>
表示される値は、この展開を持っているページの置かれているフォルダが、さらにその親フォルダの中で何番めにあるかを表す値です。
このフォルダが置かれているフォルダ中での、このフォルダの位置が先頭である場合に true を返します。
ページが置かれているフォルダが、その親フォルダの中で先頭に置かれているかどうかを表示してみます。
<body>
........
<wr-if condition="folder().isFirstObject()">
<wr-then>
フォルダ %folder().folderName()% はその親フォルダの中で先頭に置かれています。
</wr-then>
<wr-else>
フォルダ %folder().folderName()% はその親フォルダの中で先頭ではありません。
</wr-else>
</wr-if>
........
</body>
true を返します。 このメソッドは allObjects() メソッドなどで入手したリストに含まれるオブジェクトが Folder なのか Page なのかを判別する時に使用します。 Page オブジェクトにも同様のメソッドがあります。
allObjects() メソッドでページが置かれているフォルダにあるすべてのページとフォルダを取得します。取得したリストを使って、ページとフォルダの一覧を作成します。
ページについては、そのページへのリンクを付けます。
このサンプルでは、メソッドを使ってみました。
フォルダについては、フォルダの直下に index.html というファイル名のページがあれば、そのページへのリンクを付けます。なければフォルダ名のみ表示します。
<body>
........
<wr-for list="folder().allObjects()" variable="pageOrFolder">
<wr-if condition="pageOrFolder.isFolder()">%drawLinkToFolder(pageOrFolder)%</wr-if>
<wr-if condition="pageOrFolder.isPage()">%drawLinkToPage(pageOrFolder)%</wr-if>
</wr-for>
........
</body>
<wr-variable name="index" value="aFolder.pageWithFileName(\"index.html\")" />
<wr-if condition="isNotNull(index)">
<wr-then>
<a href="%index%">%aFolder.folderName()%/</a><br />
</wr-then>
<wr-else>
%aFolder.folderName()%/<br />
</wr-else>
</wr-if>
<a href="%aPage%">%pageTitle(aPage)%</a><br />
allObjects() で取得した Page と Folder のリストに対して、順に、isFolder() メソッドと isPage() メソッドで Page か Folder か判定します。Folder の場合、その Folder オブジェクトを引数にして、メソッド drawLinkToFolder(aFolder) を呼び出し、フォルダへのリンクを作成します。ページの場合には drawLinkToPage(aPage) を呼び出して、ページへのリンクを作成します。
このフォルダが置かれているフォルダ中での、このフォルダの位置が最後である場合に true を返します。
ページが置かれているフォルダが、その親フォルダの中で最後に置かれているかどうかを表示してみます。
<body>
........
<wr-if condition="folder().isLastObject()">
<wr-then>
フォルダ %folder().folderName()% はその親フォルダの中で最後に置かれています。
</wr-then>
<wr-else>
フォルダ %folder().folderName()% はその親フォルダの中で最後ではありません。
</wr-else>
</wr-if>
........
</body>
このフォルダがトップ(最上位)のフォルダかどうかを判定します。最上位のフォルダでない場合に true を返します。最上位のフォルダ場合には false を返します。 isRootFolder() も参照してください。
ページの置かれているフォルダまでのパスをパン屑リスト風に表示します。
<body>
....
<wr-for list="folder().folderPath()" variable="aFolder">
<wr-if condition="aFolder.isNotRootFolder()">→ </wr-if>%aFolder.folderName()%
</wr-for>
....
</body>
トップフォルダの前には → を表示しないようにしなければなりません。 isNotRootFolder() メソッドでトップフォルダかどうかを調べ、フォルダがトップのフォルダでない場合に限り → を表示しています。
false を返します。 このメソッドは allObjects() メソッドなどで入手したリストに含まれるオブジェクトが Folder なのか Page なのかを判別する時に使用します。
isFolder() メソッドの説明を参照してください。
このフォルダがトップ(最上位)のフォルダかどうかを判定します。最上位のフォルダである場合に true を返します。そうでない場合には false を返します。isNotRootFolder() も参照してください。
ページの置かれているフォルダまでのパスをパン屑リスト風に表示します。
<body>
....
<wr-for list="folder().folderPath()" variable="aFolder">
<wr-if condition="aFolder.isRootFolder() != true">→ </wr-if>%aFolder.folderName()%
</wr-for>
....
</body>
トップフォルダの前には → を表示しないようにしなければなりません。 isRootFolder() メソッドでトップフォルダかどうかを調べ、フォルダがトップのフォルダでない場合に限り → を表示しています。
このフォルダが置かれているフォルダ中での、このフォルダの次に位置するページまたはフォルダを返します。
フォルダやページの順序は、ページ一覧画面でのページとフォルダの表示順序と同じです。その順序に従って、ひとつ後(下)のページまたはフォルダが返されます。
このフォルダが末尾にある場合、nextObject() は null を返します。ただし、パラメタに true を指定してこのメソッドを呼び出した場合には、先頭のページまたはオブジェクトが返されます。
返される値は Folder オブジェクトまたは Page オブジェクトです。返された値の型を調べるには isFolder() メソッドと isPage() メソッドを使ってください。
ラップするかどうかを指定します。末尾に置かれているフォルダに対して wrap に true を指定して nextObject(true) という呼び出しを行った場合、先頭のページまたはフォルダが返されます。末尾に置かれているフォルダに対して nextObject() または nextObject(false) という呼び出しを行った場合には null が返されます。
このパラメタは省略可能です。省略された場合 false が指定されたものとして動作します。
ページが置かれているフォルダの、次のページまたは、次のフォルダの下にある index.html というファイル名を持つページへのリンクを生成してみます。
<body>
........
<wr-variable name="next" value="folder().nextObject()" />
<wr-if condition="isNotNull(next)">
<wr-if condition="next.isPage()">
<a href="%next%">%pageTitle(next)%</a><br />
</wr-if>
<wr-if condition="next.isFolder()">
<wr-variable name="index" value="next.pageWithFileName(\"index.html\")" />
<wr-if condition="isNotNull(index)">
<a href="%index%">%pageTitle(index)%</a><br />
</wr-if>
</wr-if>
</wr-if>
........
</body>
pageWithFileName() メソッドは、このフォルダに置かれているページで、指定されたファイル名を持つページを探して返します。該当するページがない場合には null を返します。
探したいファイル名を指定します。ファイル名は、ページのタイトルではなく、そのページが公開されたときに使用されるファイル名(index.html など) を指定します。
あるフォルダにあるページから、そのフォルダに置かれている index.html というファイル名のページへのリンクを作成しています。
<body>
....
<wr-variable name="categoryTop" value="folder().pageWithFileName(\"index.html\")" />
<wr-if condition="isNotNull(categoryTop)">
<a href="%categoryTop%">カテゴリトップへ</a>
</wr-if>
....
</body>
まず、index.html というファイル名を持つページがあるかどうか調べます。あれば、そのページへのリンクを作成します。なければなにも生成しません。
WTL 2.50 が指定されているテンプレートでは「公開テンプレート」の展開またはメソッド中で本メソッドを使って「非公開テンプレート」で作成されたページを Preview 用に取得することはできなくなりました。
pageWithFileNameRex() メソッドは、このフォルダに置かれているページで、指定されたファイル名を持つページを探して返します。該当するページがない場合には null を返します。
ファイル名の指定には正規表現が使えます。正規表現の指定によっては複数のページが該当する場合がありますが、その場合、いずれかのページが返されます。
あるフォルダにあるページから、そのフォルダに置かれている index.* というファイル名のページへのリンクを作成しています。* は任意のサフィックスとします。例えば index.html であったり、index.php であったりします。
<body>
....
<wr-variable name="categoryTop" value="folder().pageWithFileNameRex(\"index\..+\")" />
<wr-if condition="isNotNull(categoryTop)">
<a href="%categoryTop%">カテゴリトップ(%fileName(categoryTop)%)へ</a>
</wr-if>
....
</body>
まず、index.* というファイル名を持つページがあるかどうか調べます。正規表現で指定しますが、今回は「index\..+」と指定しています。そのようなページがあれば、そのページへのリンクを作成します。なければなにも生成しません。
もし、リンク先を index.html index.php index.xhtml の3種類に限定するのであれば、正規表現として「index\.(html|php|xhtml)」と指定すれば良いでしょう。
WTL 2.50 が指定されているテンプレートでは「公開テンプレート」の展開またはメソッド中で本関数を使って「非公開テンプレート」で作成されたページを Preview 用に取得することはできなくなりました。
pageWithPageTitle() メソッドは、このフォルダに置かれているページの中で、指定されたタイトルを持っているページを探して返します。該当するページがない場合には null を返します。 ページタイトルが重複している場合、複数のページが該当する場合がありますが、その場合、いずれかひとつが返されます。 フォルダ内のページだけが検索対象です。サブフォルダは検索の対象にはなりません。
探したいページのタイトルを指定します。
ページが置かれているフォルダに「イベント一覧」というタイトルのページがあるかどうか調べ、それがある場合には、そのページへのリンクを生成します。
<body>
....
<wr-variable name="eventList" value="folder().pageWithPageTitle(\"イベント一覧\")" />
<wr-if condition="isNotNull(eventList)">
<a href="%eventList%">イベント一覧へ</a>
</wr-if>
....
</body>
WTL 2.50 が指定されているテンプレートでは「公開テンプレート」の展開またはメソッド中で本関数を使って「非公開テンプレート」で作成されたページを Preview 用に取得することはできなくなりました。
pageWithPageTitleRex() メソッドは、このフォルダに置かれているページで、指定されたタイトルを持つページを探して返します。該当するページがない場合には null を返します。
タイトルの指定には正規表現が使えます。正規表現の指定によっては複数のページが該当する場合がありますが、その場合、いずれかのページが返されます。
ページのタイトルが「1.」で始まっているページを探し、みつかったら、そのページへのリンクを作成して表示してみます。
<body>
....
<wr-variable name="page1" value="folder().pageWithPageTitleRex(\"^1\..*\")" />
<wr-if condition="isNotNull(page1)">
<a href="%page1%">先頭へ</a>
</wr-if>
....
</body>
WTL 2.50 が指定されているテンプレートでは「公開テンプレート」の展開またはメソッド中で本関数を使って「非公開テンプレート」で作成されたページを Preview 用に取得することはできなくなりました。
このフォルダが置かれているフォルダ中での、このフォルダの前に位置するページまたはフォルダを返します。
フォルダやページの順序は、ページ一覧画面でのページとフォルダの表示順序と同じです。その順序に従って、ひとつ前(上)のページまたはフォルダが返されます。
このフォルダが先頭にある場合、prevObject() は null を返します。ただし、パラメタに true を指定してこのメソッドを呼び出した場合には、一番最期のページまたはオブジェクトが返されます。
返される値は Folder オブジェクトまたは Page オブジェクトです。返された値の型を調べるには isFolder() メソッドと isPage() メソッドを使ってください。
ラップするかどうかを指定します。先頭に置かれているフォルダに対して wrap に true を指定して prevObject(true) という呼び出しを行った場合、最後のページまたはフォルダが返されます。先頭に置かれているフォルダに対して prevObject() または prevObject(false) という呼び出しを行った場合には null が返されます。
このパラメタは省略可能です。省略された場合 false が指定されたものとして動作します。
ページが置かれているフォルダの、ひとつ前のページまたは、ひとつ前のフォルダの下にある index.html というファイル名を持つページへのリンクを生成してみます。
<wr-variable name="next" value="folder().prevObject(true)" />
<wr-if condition="isNotNull(next)">
<wr-if condition="next.isPage()">
<a href="%next%">%pageTitle(next)%</a><br />
</wr-if>
<wr-if condition="next.isFolder()">
<wr-variable name="index" value="next.pageWithFileName(\"index.html\")" />
<wr-if condition="isNotNull(index)">
<a href="%next%">%next%</a><br />
</wr-if>
</wr-if>
</wr-if>
トップのフォルダを返します。
トップフォルダの直下に置かれている index.html へのリンクを生成してみます。
<body>
....
<wr-variable name="top" value="folder().rootFolder().pageWithFileName(\"index.html\")"/>
<wr-if condition="isNotNull(top)">
<a href="%top%">%pageTitle(top)%へ</a>
</wr-if>
....
</body>
最初の folder() 関数の呼び出しで、ページが置かれているフォルダを取得しています。次に、取得した Folder オブジェクトに対して rootFolder() メソッドを呼び出し、トップの(最上位の)フォルダを入手します。入手したトップのフォルダに対して pageWithFileName() メソッドを呼び出し index.html というファイル名を持つページを入手します。
index.html がみつかったら、そこへのリンク表示します。
フォルダに置かれているサブフォルダの一覧を返します。返される値は Folder オブジェクトの列(リスト)です。
subFolders() メソッドの戻り値中のフォルダの並びはページ一覧画面でのフォルダの表示順序と同じになるようにソートされています。
WTL 2.4 以前では subFolders() メソッドの戻り値のリストに Versioning Folder が含まれていましたが WTL 2.5 からは Versioning Folder が含まれることはなくなりました。
フォルダに置かれているサブフォルダの一覧を表示します。
....
<br />
<wr-for list="folder().subFolders()" variable="aFolder">
%aFolder.folderName()%<br/>
</wr-for>
<br />
....
folder() 関数を呼び出して、ページが置かれているフォルダを取得します。取得した Folder オブジェクトの subFolders() メソッドを呼び出してサブフォルダの一覧を取得します。それを wr-for でループして一覧を表示しています。
フォルダに置かれているページとフォルダの数を返します。
フォルダ中に Versioning Folder が含まれている場合、その Versioning Folder に置かれているページで、コンテンツ生成時刻に該当するページがある場合、そのページはこのメソッドのカウントの対象となります。
Versioning Folder はそれ自身がカウントの対象になることはありません。
ページが置かれているフォルダにある、ページとサブフォルダの数を表示します。
<body>
........
このフォルダには %folder().totalObjects()% 個のフォルダとページが置かれています。<br />
ページは %folder().totalPages()% ページあります。<br />
フォルダは %count(folder().subFolders())% 個あります。<br />
........
</body>
フォルダに置かれているページの数を返します。
フォルダ中に Versioning Folder が含まれている場合、その Versioning Folder に置かれているページで、コンテンツ生成時刻に該当するページがある場合、そのページはこのメソッドのカウントの対象となります。
Versioning Folder はそれ自身がカウントの対象になることはありません。
ページが置かれているフォルダにあるページの総数を表示してみます。
<body>
........
このページが置かれているフォルダには %folder().totalPages()% ページのコンテンツがあります。
........
</body>
公開テンプレートの展開またはメソッド中で本メソッドを使った場合、非公開テンプレートで作成されたページはカウントの対象にはなりません。