Content by Label Macro

The Content by Label macro displays links to pages, blog posts and attachments that have been tagged with specific labels.

A working example

Below is a working example of the Content by Label macro, displaying content with the label 'LDAP'.

Using the Content by Label Macro

To add the Content by Label macro to a page:

  1. In the Confluence editor, choose Insert > Other Macros.
  2. Find and select the required macro.

Speeding up macro entry with autocomplete:

Type { and the beginning of the macro name, to see a list of suggested macros. Details are in Using Autocomplete.

To edit an existing macro: Click the macro placeholder and choose Edit. A macro dialog window will open, where you can edit the parameters of the macro.

Parameters

Parameters are options that you can set to control the content or format of the macro output. Where the parameter name used in Confluence storage format or wikimarkup is different to the label used in the macro browser, it will be listed below in brackets (example).

Parameter

Default

Description

Label(s)
(labels

None

Filter by label(s). The macro will display only the content tagged with the label(s) specified here. See also the Operator parameter below.

This parameter is required. Specify one or more labels, separated by a comma or a single space.

  • To exclude content which matches a given label, put a minus sign (-) immediately in front of that label value. For example: If you specify a label value of -badpage you will get only content which is not labelled with 'badpage'.
  • To indicate that the results must match a given label value, put a plus sign (+) immediately in front of that label value. For example: If you specify a label value of +superpage,+goodpage you will get only content which has at least two labels, being 'superpage' and 'goodpage'.

Author(s)
(author

None

Filter by author. The macro will display only the content created or updated by the author(s) specified here.

Include this Content Type Only
(type

all

Filter by content type. The macro will display only the content of the type specified here.

Specify one or more content types, separated by a comma or a space.

To exclude content of a given content type, put a minus sign (-) immediately in front of that content type. For example: If you specify a content type of -blogpost you will get pages and all other content except for blog posts.

Available values:

Show Labels for Each Page
(showLabels

true

Show or hide labels in the results.

Show Space Name for Each Page
(showSpace

true

Show or hide spaces in the results.

List Title
(title

None

Add a title or heading to the list.

Maximum Number of Pages
(max

15

Limit the maximum number of results to be displayed. Note that the results are sorted first, and then the maximum parameter is applied.

Display Excerpts
(excerpt

false

Include excerpts from each page listed. Note that you must have defined excerpts on each of those pages, by adding the excerpt macro to the page. Only the first few lines of the excerpt for each page are displayed.

Restrict to these Spaces
(spaces

@all

Filter by space. The macro will display only the content which belongs to the space(s) specified here.

Specify one or more space keys, separated by a comma or a space.

  • To exclude content in a specific space, put a minus sign (-) immediately in front of that space key. For example: If you specify a space key of -BADSPACE you will get only content which is not in the BADSPACE.
  • To indicate that the results must come from a specific space, put a plus sign (+) immediately in front of that space key. For example: If you specify a space key of +GOODSPACE you will get only content in GOODSPACE. (Note that this is not particularly useful, because each content item belongs to one space only. If you put a plus sign next to one space key and list other space keys too, the other space keys will be ignored.)

Special values:

  • @self — The current space.
  • @personal — All personal spaces.
  • @global — All site spaces.
  • @favorite — The spaces you have marked as favourite.
  • @favourite — The same as @favorite above.
  • @all — All spaces in your Confluence site.
  • * — The same as @all above.

When specifying a personal space, remember to use the tilde (~) sign in front of the username, such as ~jbloggs or ~jbloggs@example.com.

Operator
(operator

OR

The operator to apply when matching content against the labels specified in the Label(s) parameter:

  • OR – Display content with any of the non-prefixed labels.
  • AND  – Display content with all of the specified non-prefixed labels.

    (info) Note that this parameter only modifies the behaviour of the Label(s) parameter and only affects label values without a plus (+) or minus (-) sign prefix.

Sort By
(sort

modified

Specify how the results should be sorted.

Values:

  • title — Sort alphabetically by title.
  • creation — Sort by the date on which the content was added.
  • modified — Sort by the date on which the content was last updated.

Note: If this parameter is not specified, the sort order defaults to descending, based on the last modification date (latest first). To change the sort order from ascending to descending, use the Reverse Sort parameter.

Reverse Sort
(reverse

false

Select Reverse Sort to change the sort from descending to ascending. Use this parameter in conjunction with the Sort By parameter. Reverse Sort is ignored if Sort By is not specified.

Code examples

The following examples are provided for advanced users who want to inspect or edit the underlying markup for a Confluence page. 

Macro name: contentbylabel

Macro body: None.

Storage format example

<ac:structured-macro ac:name="contentbylabel">
  <ac:parameter ac:name="spaces"/>
  <ac:parameter ac:name="author">admin,smaddox</ac:parameter>
  <ac:parameter ac:name="title">My labelled pages</ac:parameter>
  <ac:parameter ac:name="showLabels">false</ac:parameter>
  <ac:parameter ac:name="reverse">true</ac:parameter>
  <ac:parameter ac:name="sort">creation</ac:parameter>
  <ac:parameter ac:name="max">10</ac:parameter>
  <ac:parameter ac:name="excerpt">true</ac:parameter>
  <ac:parameter ac:name="labels">chocolate,cake</ac:parameter>
  <ac:parameter ac:name="showSpace">false</ac:parameter>
  <ac:parameter ac:name="type">page</ac:parameter>
  <ac:parameter ac:name="operator">AND</ac:parameter>
</ac:structured-macro>

Wikimarkup example

{contentbylabel:spaces=@personal,@self|author=admin,smaddox|title=My labelled pages|showLabels=false|reverse=true|sort=creation|max=10|excerpt=true|labels=chocolate,cake|showSpace=false|type=page|operator=AND}

Was this helpful?

Thanks for your feedback!

Why was this unhelpful?

Have a question about this article?

See questions about this article

Powered by Confluence and Scroll Viewport