I'd like to create some templates injecting various macros as part of the template format. I feel the main answer to my question is going to be ReadTheManual, so if I just need to be pointed to the right docs that's fine.
When I go to create a page template my options seem very limited. I can only use WikiMarkup and FormFields for variables. Can I insert a TableOfContents using wikimarkup? The macro doc page for this only talks about using the RTE editor to Insert -> Other Macro while editing a normal page. Is there anyway to specify this macro should be inserted w/ wiki mark up?
The other thing I was interested in doing was using the template variable FormField prompts for some place holder values. However, from best I can tell from practice and reading exmples, it just prompts you for the literal value and then places it inline where the prompt was placed in the template.
What I want to do is prompt for a couple values and then use these variable names in some JQL queries for the Jira Issues macro (which again leads back to my first issue of not being able to find how to put macros in templates to begin with).
In Confluence 4 when you can specify a variable say @JQL@ outside of your macro as well as inside your macro, and you'll be given the chance to set it when you create the page, and the same JQL will be used in both spots. However that functionality is no longer in Confluence 5. For that discussion see: How do you add template variables as macro parameters or in plain text macro bodies?
I figured since we solved this recently, i would add our official solution to this request which allows to inject any number of variables into any JQL filter in a Confluence Template. Below is the how-to as well as some usage notes i wrote for our company:
First we start out with determining the current syntax of the JQL Issues/Filter macro in confluence:
Copy the JIRA Issue/Filter macro syntax to a text editor, e.g.
<p> <ac:structured-macro ac:macro-id="5a45704b-a904-4440-bdc0-da68a22d5802" ac:name="jira" ac:schema-version="1"> <ac:parameter ac:name="server">JIRA</ac:parameter> <ac:parameter ac:name="columns">key,summary,type,created</ac:parameter> <ac:parameter ac:name="maximumIssues">20</ac:parameter> <ac:parameter ac:name="jqlQuery">assignee = abarylak and resolution is EMPTY </ac:parameter> <ac:parameter ac:name="serverId">c8001771-0b52-30e0-9703-562a2820710f</ac:parameter> </ac:structured-macro> </p>
Then we need to use the above syntax (a little modified) and use that for our macro.
Results are as follows:
## Macro title: JQL Filter Allowing Variables ## Macro has a body: Y ## Body processing: Rendered ## Output: JIRA Issues/Filter Macro w/ injected variables ## ## Developed by: Adam Barylak ## Date created: 2016-05-27 ## Installed by: Adam Barylak ## This macro will prompt for max number of rows and the column option, then the body will require the JQL with injected variables ## @param maxRows:title=Max Rows|type=int|required=true|default=20|desc=Enter the max rows, anything above 1000 will only display 1000 rows. ## @param columns:title=Columns|type=string|required=true|default=key,summary,type,status,assignee|desc=Enter the columns you want returned. Must be separated by commas, all lowercase, and no quotes. e.g. key,summary,assignee,test author,reporter #set ($body = $body.replaceAll("\Q<p>\E","")) #set ($body = $body.replaceAll("\Q</p>\E","")) #set ($body = $body.trim()) <p> <ac:structured-macro ac:name="jira" ac:schema-version="1"> <ac:parameter ac:name="server">JIRA</ac:parameter> <ac:parameter ac:name="columns">$paramcolumns</ac:parameter> <ac:parameter ac:name="maximumIssues">$parammaxRows</ac:parameter> <ac:parameter ac:name="jqlQuery">$body</ac:parameter> <ac:parameter ac:name="serverId">c8001771-0b52-30e0-9703-562a2820710f</ac:parameter> </ac:structured-macro> </p>
Create the macro in confluence with the following options or similar (change as needed):
Hopefully this helps others accomplish this same task. This ends up being really useful if you need to repeat a bunch of JQL filters for different things on different pages in Confluence and you don't have to store these filters as saved filters in JIRA either.
You can see the doco for inserting macros using wiki markup by looking at the older Confluence 3.5 documentation (Confluence 4 is the first version of Confluence that is not wiki markup-based).
That table of contents macro, for example, is here: http://confluence.atlassian.com/display/CONF35/Table+of+Contents+Macro#TableofContentsMacro-UsagewiththeWikiMarkupEditor
This community is celebrating its one-year anniversary and Atlassian co-founder Mike Cannon-Brookes has all the feels.Read more
Hi Community! Kesha (kay-sha) from the Confluence marketing team here! Can you share stories with us on how your non-technical (think Marketing, Sales, HR, legal, etc.) teams are using Confluen...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs