automatically adding labels to confluence page

Hi all,

Is there a way to automatically add a label to a page upon creation.  We are wanting to create a retention policy for our site that has a number of settings.  For each space we would want a default retention policy label applied to each page.  So:

Space A: all pages default to rrpolicy1

Space B: all pages default to rrpolicy2

Space C: all pages default to rrpolicy1

I can, with the cli, add a label to each page in a give space through a programmatic method, but newly created pages will not automatically get the new label.

Thanks in advance,

Robert

 

5 answers

1 accepted

Hi Robert

You can do this. What you will want to do is create a new page template within each space. In the template you would include any labels that you wanted. Once created you can click the 'promote' link which will cause the template to be at the top of the list of options when creating a new page.

When someone goes to create a new page within this space, they would simply choose this template to create their page, and the correct labels would automatically be added.

I hope this is what you were looking for.

Cheers
Marty

Is there a way to edit the default templates to simply add a label to them? I really do not know how to recreate the Blog post, decision, etc. pages so that there is a duplicate of each one with a new label. Also is there a way when the page is created to not allow the users to delete the label? IE can I lock the label?

You could also solve it by building a dead-simple Confluence plugin that contains nothing else but an EventListener. The listener should intercept the "page created" events and add the labels trivially.

Another option to consider is to use the Archiving Plugin to implement your retention policies, instead of rolling out some custom solution. With this you can set up policies per space, according to your requirement. Make sure you check it.

An older screenshot about the config options:

confluence-retention.png

I do need to learn to write plugins so that sounds like a good solution as well. As far as the archive plugin, I believe that only archived pages not comments and we are interested at first in only deleting comments.

2 votes

If you are creating a page from a template, then yes, it can automatically label the page. Click the gear cog in the bottom left and then click Content Tools. At the top of that page should be your user created templates. Click Edit for the appropriate template. Once you are editing the template, there is a little tag icon next to the page title. By clicking that you'll get a modal window with free form text entry. Type your text and select the appropriate tag.

 

Now each time you create a page using that template, your page will be automatically tagged with that label.

Simple and great solution! :)

1 vote
Stephen Deutsch Community Champion Mar 24, 2015

Another option would be to install the Label Tools addon from Adaptavist (https://marketplace.atlassian.com/plugins/com.adaptavist.confluence.labeltools), which contains the add-label macro.

Then you would need to get this to display on every page in the space.  If you are still using the documentation theme, then you can just add the macro in wiki markup format in either the header or the footer: 

{add-label:rrpolicy1}

Or, if you are using the default theme, you will need to change the page layout for the space and add the following line somewhere in the decorator:

$action.helper.renderConfluenceMacro("{add-label:rrpolicy1}")

Then newly created pages should have the label added to them.

Stephen Deutsch Community Champion Mar 24, 2015

If you don't want to use the Label Tools plugin, I could whip up a user macro that adds a label to the page using javascript, but since it's already there...

I have no problem installing the plug in, especially since it's free. :) Where do I go to edit the header or footer? If I just changed the layout (I do that a lot already) wouldn't that be for all spaces? Ideally I would like a different setting per space.

Ideally I would like to mark both answers as correct as they both solve the problem to an extent, but when I mark the above answer as correct is deactivates this one and vise versa...

Robert, I have encountered the same issue both asking and answering questions. It may be a viable enough issue to place a feature request on it for Confluence Questions (I haven't searched if it already is, but if it is I'll vote for it!).

1 vote

Hello,

You could use the Power Scripts add-on:

https://marketplace.atlassian.com/apps/1219507/power-scripts-for-confluence?hosting=server&tab=overview

You could write a listener for the Page Create event with this code:

if (space == "your space key") {
labels = {"yourlabel"};
}

This listener would add a label to each page, which is create in the required space.

You can find more info about listeners here:

https://confluence.cprime.io/pages/viewpage.action?pageId=32825901

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Nov 29, 2018 in New to Confluence

How to use Confluence Cloud for stakeholder management

Most of us don’t need much convincing that stakeholder management is important. It just makes sense that keeping everyone in-the-know on projects and assigning clearly defined roles is key to having ...

1,011 views 0 5
Read article

Atlassian User Groups

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!

Find my local user group

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

Groups near you