Background

In this demo we demonstrate how to use ConfiForms data as parameters for Atlassian Include page macro

You can see a complete configuration for you to import on the bottom of the page

Here is how it looks like in the editor 

The tricky part is the set up of the "Include Page"  macro and you need to do it using Confluence source editor, as otherwise it does not accept dynamic parameters

The configuration for this macro should loom like this (assuming your information about what page to include is stored in "pageToInclude" ConfiForms Field of "Page/Blogpost" type)

<ac:structured-macro ac:macro-id="b728042f-5210-47ca-a201-0927375638a9" ac:name="include" ac:schema-version="1"> 
  <ac:parameter ac:name=""> <ac:link> <ri:page ri:content-title="[entry.pageToInclude.title]" ri:space-key="[entry.pageToInclude.spaceKey]"/> </ac:link> </ac:parameter> 
</ac:structured-macro>

You can see we use "pageToInclude" objects properties to get the values for page title and space key.

See Accessing page properties for more details on which properties are available for each field type in ConfiForms

Realtime example


We have 2 records stored in the form at the moment


and we will show the contents of these pages with the help of Include Page macro

Show the contents. In this demo we show the contents (via include page) of 2 child pages (you can include any page you want)

Children pages


Storage format (configuration) for the demo

<ac:structured-macro ac:macro-id="f7bd459e-85e2-499e-9127-89684ea0e5ad" ac:name="confiform" ac:schema-version="1">
<ac:parameter ac:name="formName">myform</ac:parameter>
<ac:rich-text-body>
<ac:structured-macro ac:macro-id="096bc0a3-c584-4a1f-9db3-b7a73be4a592" ac:name="confiform-entry-register" ac:schema-version="1">
<ac:parameter ac:name="formName">myform</ac:parameter>
<ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
<ac:rich-text-body>
<p>
<br/>
</p>
</ac:rich-text-body>
</ac:structured-macro>
<p>
<ac:structured-macro ac:macro-id="b07876a3-36b9-4c3f-8294-690d83f01ec8" ac:name="confiform-field-definition" ac:schema-version="1">
<ac:parameter ac:name="fieldName">pageToInclude</ac:parameter>
<ac:parameter ac:name="fieldLabel">Page to include</ac:parameter>
<ac:parameter ac:name="extras">TEST</ac:parameter>
<ac:parameter ac:name="type">page</ac:parameter>
</ac:structured-macro>
</p>
</ac:rich-text-body>
</ac:structured-macro>
<p>
<br/>
</p>
<h2>Show the contents. In this demo we show the contents (via include page) of 2 child pages (you can include any page you want)</h2>
<ac:structured-macro ac:macro-id="826c226a-5bbc-40f5-bf85-f837aa086a16" ac:name="confiform-list" ac:schema-version="1">
<ac:parameter ac:name="formName">myform</ac:parameter>
<ac:rich-text-body>
<p>
<ac:structured-macro ac:macro-id="7edd88ce-6a0d-4a38-9bf0-2070abe9207f" ac:name="confiform-field" ac:schema-version="1">
<ac:parameter ac:name="fieldName">pageToInclude</ac:parameter>
</ac:structured-macro>
</p>
<p>
<ac:structured-macro ac:macro-id="b728042f-5210-47ca-a201-0927375638a9" ac:name="include" ac:schema-version="1">
<ac:parameter ac:name="">
<ac:link>
<ri:page ri:content-title="[entry.pageToInclude.title]" ri:space-key="[entry.pageToInclude.spaceKey]"/>
</ac:link>
</ac:parameter>
</ac:structured-macro>
</p>
</ac:rich-text-body>
</ac:structured-macro>