子ページのテーブルを作成するカスタム ユーザー マクロを作成しました。このテーブルには、最終更新日、バージョン、更新者などの情報も入力されます。
ページをエクスポートするとテーブルにデータが入力されますが、スペースをエクスポートするとテーブルは空になります。
コードは以下です
## Macro title: Page Data
## Macro has a body: N
## Body processing: n/a
## Output: HTML
##
## Developed by: Brian Mitchell
## Date created: 06/27/2013
## @noparams
#set ($PageTitle = $content.displayTitle)
#set ($PageVersion = $content.version)
#set ($PageDate = $action.dateFormatter.formatGivenString("dd MMM yyyy", $content.lastModificationDate))
#set ($PageAuthor = $content.lastModifierName)
#set ($pageListArray = [])
#set ($currentPage = $action.page)
#set ($spaceHome = $space.getHomePage())
#macro ( process $rp )
#set ($pagelist = $rp.getSortedChildren() ) ## returns List<Page>
#foreach( $child in $pagelist )
#set($p = $pageListArray.add( $child ) )
#if( $child.hasChildren() )
#process ( $child )
#end
#end
#end
#process ($currentPage)
<h1> Confluence Page Versions </h1>
<table class="confluenceTable">
<tbody>
<tr>
<th class="confluenceTh">Page Title</th>
<th class="confluenceTh">Page Version</th>
<th class="confluenceTh">Date</th>
<th class="confluenceTh">Changed By</th>
</tr>
<tr>
<td>$PageTitle</td>
<td><a href=http://confluence.mango.local/pages/viewpreviousversions.action?pageId=$content.getIdAsString()>$PageVersion</a></td>
<td>$PageDate</td>
<td>$PageAuthor</td>
</tr>
#foreach( $child in $pageListArray) ## child is of type Page
<tr>
<td class="confluenceTd">$child.getTitle()</td>
<td class="confluenceTd"><a href=http://confluence.mango.local/pages/viewpreviousversions.action?pageId=$child.getIdAsString()>$child.getVersion()</a> </td>
<td class="confluenceTd">$action.dateFormatter.formatGivenString("dd MMM yyyy", $child.getLastModificationDate())</td>
<td class="confluenceTd">$child.getLastModifierName()</td>
</tr>
#end
</tbody>
</table>
ただし、コードを編集してスペースの内容全体を配列に入れると、エクスポート時にテーブルにデータが入力されます
#process ($currentPage)
を#process ($spaceHome)に置き換えます。
問題はスペースのエクスポートにあると思います 次のコマンドが機能していません
#set ($currentPage = $action.page)
代わりに何を使用できるかについて誰かアイデアがありますか?