This is my first user macro. I want it to include the Include Page macro. I got this example from the Confluence documentation:
<ac:structured-macro ac:name="include"> <ac:parameter ac:name=""> <ac:link> <ri:page ri:content-title="My chocolate page" ri:space-key="DOC"/> </ac:link> </ac:parameter> </ac:structured-macro>
This would work fine if I wanted the user macro would always connect to the same page, but I want mine to open a dialog and prompt for "Page to Include", the way the Include Page macro normally does.
I can't find the instructions to do that. I thought if I deleted the "ri" tag, it would prompt me, but that doesn't seem to work.
If you need to prompt for a page to include, then you have to include parameters in your user macro:
https://confluence.atlassian.com/doc/user-macro-template-syntax-223906130.html
and then you'll have to parse the result yourself. Here is a small example that should work:
## @param PageToInclude:title=Page to Include|type=confluence-content|required=true|desc=To specify a page in a different space, use SPACEKEY:Page Title.
#if ( $paramPageToInclude.indexOf(":") == -1 )
#set ( $spaceKey = $space.key )
#set ( $contentTitle = $paramPageToInclude)
#else
#foreach ( $part in $paramPageToInclude.split(":") )
#set ( $spaceKey = $part )
#break
#end
#foreach ( $part in $paramPageToInclude.split(":") )
#set ( $contentTitle = $part )
#end
#end
<ac:structured-macro ac:name="include">
<ac:parameter ac:name="">
<ac:link>
<ri:page ri:content-title="$contentTitle" ri:space-key="$spaceKey"/>
</ac:link>
</ac:parameter>
</ac:structured-macro>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.