I am trying to see if there is way to enter a Confluence search query which finds pages containing a macro with specific parameters.
Partial solution: This actually still seems to work from a way back article by Sarah Maddox in so far as one can search: macroName: x*
https://ffeathers.wordpress.com/2011/11/04/how-to-search-confluence-for-usage-of-a-macro/
OR another helpful solution would be how to create something like a regex which searches XHTML or Storage Format for Confluence pages matching the criteria.
Thank you for any insights!!
you can try using CQL to search for uses of macros (see https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql#AdvancedSearchingusingCQL-macroMacroMacro), but that doesn't let you specify the parameters unfortunately.
Hi Brendan,
If you are willing to wirte a plugin, this is the code snippet to find macros and their parameters:
MacroDefinitionHandler macroDefinitionHandler = new MacroDefinitionHandler() {
public void handle(MacroDefinition macroDefinition) {
String macroName = macroDefinition.getName();
if (macroName != null && macroName.equals(MACRO_NAME)) {
buttonCaptions.add(macroDefinition.getParameter(PARAM_CAPTION));
}
};
try {
xhtmlContent.handleMacroDefinitions(pageInStorageFormat, conversionContext, macroDefinitionHandler);
catch (XhtmlException e) {
throw new PtcException("Couldn't extract button name from MACRO_NAME.",e);
I hope this gives you a good starting point.
Regards,Stephan
It looks like you're new here. Sign in or register to get started.