How can I automatically create numbered pages with confluence, e.g. FAQ001, FAQ002?

I want to spare my users from thinking about a pagetitle and rather not publishing a topic. Pages should be created with a defined prefix (e.g. FAQ) followed by defined numbering (e.g. 3 digits FAQ001, FAQ002, ..., FAQnnn).

Users can focus on content an do not need to bother on (conflicting or dumb) pagetitles. Is there a way (extension etc.) to realize this within confluence?

5 answers

1 accepted

5 votes
Accepted answer

You can use the {add-page} macro from the Linking Plugin in conjunction with the 'Child Counter Supplier' to provide a link that, when clicked, will create a new page with an automatic number. See here for details:

http://www.customware.net/repository/display/AtlassianPlugins/Child+Counter+Supplier

Specifically, however, it would be something like this:

{add-page:name=Child Page %child-counter:next > number:000%}Add 'Child Page {report-info:child-counter:next}'{add-page}
 
Hope that helps!

Thank you, this might help. The Problem with this solution seems to be if pages are deleted. E.g. create "Child Page 001" - "Child Page 004" and delete "Child Page 003". Since only the number of child-pages are counted, the macro will try create "Child Page 004" which already exists.
Child Counter is specifically designed to address that issue and doesn't depend on the current number of children. Rather, it keeps track of the total number of pages that have been created with it.
Right, I had some other problems with the setup. As far as I see this will do the job!

Since Confluence 4 and the removal of wikimarkup, it is no longer possible to set the "name" parameter for the "add-page"-macro, since it is missing in the macro-browser. Therefore I can't generate a new page without this intermediate page asking me to input a page name.

@David: is there a way to reset the counter after lots of useless testing that I've done? Somewhere in the database?

This thread is already a bit older.
But I have the same problem at the moment.

I'm creating new pages with a "space template"  . I would like to have the name of the ne page created automaticli with a increment     .     The page name should consist of a prefix and a increment. (As Cedric Weber mentioned)

We are currently using Confluence 5.3.1, are there allready  implemted  solutions to do so?

Thanks for any advice
Patrik

 

I would be interested with that type of solution for confluence versions 5.x as well

I believe you won't be able to it natively on Confluence. However, there's a plugin which can helps with:

https://studio.plugins.atlassian.com/wiki/display/CREATE/Create+Page+Plugin

As the description says:

"The {create-page} macro asks the user for the name of the page and then creates it based on a template.
More information can be found in our userguide"

Maybe it isn't what you're exactly looking for, but should help though.

Cheers!

That's what I've found as well, but that's not enough. AFAIK the user still has to think about a pagename instead of just creating a page based on a simple form.

i use confluence-cli plugin (tool): https://studio.plugins.atlassian.com/wiki/display/CSOAP/Confluence+Command+Line+Interface

a simple driver script that would loop from FAQ001 through FAQ999 and call cli's addPage would do a trick for you

EDIT:

here is a Ruby snippet i use to batch-create multiple pages (could be used to remove pages as well)

# ==========
def run_confluence_sh(log,to_run)
to_run = "/home/atlassian/atlassian/_CODE/atlassian-cli/confluence.sh " + to_run
log.debug to_run
out = `#{to_run} 2>&1`

if $?.exitstatus > 0 then
log.debug "===> FAIL"
log.debug $?.exitstatus
log.debug out
send_email Send_email_to, :body => "FAILED #{out}"
exit
end
end

# ==========

my_action = "addPage"
pageNames = ["1","34","4534","214"]

pageNames.each do |pageName|
run_confluence_sh(log, "--action #{my_action} --space 'ABC' --parent 'ParentPage' --title '#{pageName}' --file '#{my_home}/template-0.txt'")
end # block

template-0.txt would contain wiki markup

0 votes
Ruchi Tandon Atlassian Team May 31, 2011

Hi

You could use Office Connector's import page functionality and select the option for "Rename imported pages if page name already exists". This would automatically append a number 0...9 against the page name if the page names conflict.

Not sure if there is a similar functionality available while creating pages.

Ruchi

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Tuesday in United States

Topic Tuesday: What's your favorite topic?

Good morning All, Our goal is to get you into the habit of while enjoying your favorite morning drink you are checking the NOVA "space" for topics and comments. Your input is really needed and...

62 views 4 0
View post

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