Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
maxLevel2
minLevel2
absoluteUrltrue
excludeSee Also
typeflat
printablefalse
separatorpipe

Overview

With same-space publishing, each piece of content (page or blog post) can have concurrent draft and approved versions.

Image Added

One state in your workflow must be set as a published state.

If the content is in one of the other workflow states, the workflow will see this as a draft state.

Image Removed

Image Added

In a draft state a byline link to the latest approved version is displayed if the content has previously been in the published state.

Choosing the byline link displays the last approved content.

Image Added

The last approved content version is displayed with a byline displaying the approved content workflow state name and a link to the latest draft content. 

By default, users with Confluence view only permission for the content will only see this last approved content version. No workflow byline or breadcrumbs will be visible.

Image Added

Only a user with edit or admin permission will be able to view the draft content and view and access the workflow byline breadcrumbs and workflow popup.

The same-space publishing capability is aimed at organisations using Confluence internally. It can also be used in conjunction with other apps to manage publishing to a different space or a remote space.

Tip

If there is a formal requirement (compliance; organizational policy) that draft updates are not visible to some users we recommend using Different-space publishing where Confluence permissions can hide the draft space content entirely.

Activating same-space publishing

To use same-space publishing, just add the final=true parameter to one of the 

{}

 macros in your workflow – this marks it as the published state.

Edit the state in workflow builder to make it the final state in the workflow.

Image Added

The addition of the final=true parameter changes the behavior of

Confluence

the workflow to show a user different page

versions

version depending on the Confluence permissions of the user.

The workflow published version of the content is the version created when a transition to the final state takes place. This is the final state version.

Editing of
  • editing content in

the 
  • the final state will create a new version but the

published
  • final state version will remain as the version created on transition into

this
  • the final state

.
Tip

This is why it is good practice to transition out of

the final

the final state if the content is changed, for example by adding an updated transition to the  final state.

Differentiating draft and published content

Same-space publishing is used to differentiate content in a draft workflow state and the final state version.

Note

Same-space publishing is not a secure way to publish content.

View-only users are directed to the latest final state version (if present)

  • the workflow byline breadcrumbs are not displayed on this content

  • they will not be able to navigate to, or view content in a draft state

Whilst view-only users default to seeing the approved content (the latest final state version) the most up to date content will still be visible

  • through the page history or search index

  • in the mobile view (rather than desktop view) and in some apps that can only display the latest version

 In these cases a view-only user will not be directed to the final state version and draft content can be accessed by a view-only user.

†  The app global configuration and space configuration - Workflow Activity and Drafts Visibility and Internal Page Publishing Configuration - will impact users' ability to view content with an applied workflow with a final state.

Subsequent drafts

The final state version is created on a transition into the final state.

Info

If the final workflow state content is edited and no transition occurs (for example, there is no updated transition present in the state), the content in the final state will be a different version to the final state version even though the content remains in the final workflow state.

The updated parameter can be added to a final state to ensure that any subsequent edits are pushed to a draft state.

In the example workflow below, editing the content when it is in the final state causes a transition to the Editing state. The content in the final state Published will then always be the final state version.

Code Block
theme
languagetextRDark
{workflow:name=In-space Publishing}
   {state:Editing|submit=Review}
   {state}
   {state:Review|approved=Published|rejected=Editing}
      {approval:Review|assignable=true}
   {state}
   {state:Published|final=true|updated=Editing}
   {state}
{workflow}

Image Removed

Subsequent drafts

The updated parameter can be applied to published states to ensure that any subsequent edits are pushed to a draft state.

In the example markup above, editing the published state content will result in the new version being in the editing state.

Info
iconfalse
As the published version is created on a transition into the final state, if the final state content is edited and no transition occurs (for example, there is no updated transition present in the state) the version created will NOT BE the published version even though the content remains in the final state.
Image Added

State colours

By default, draft (unpublished) states will have an Image Modified orange circle and published (final=true) state will have a Image Modified green circle.

For more information, see State Status Indicator Circles.

Note: Since v5.0.8, colours

Info

State indicator colors can be customized on state-by-state basis using workflow

builder

builder or via the editing the

markup 

 color parameter on the 

{state} macro

state macro.

Permissions

If a workflow has a published (final=true) state, then all other states in that workflow will be considered draft (unpublished) states. For example in a three state workflow with the following states:

Image Modified Editing – draft

Image Modified Review – draft

Image Modified Published – published (final=true) state

By default, users who only have

View

view content permission can only see the most recently published version of each page or blog post. If they try to view draft (unpublished) versions, they will see an error

like can see

similar to this

Image Removed
Users with Edit and Admin permissions
Image Added

The default app configuration allows users with edit and/or admin permission to view all versions of content, and they can switch between the latest draft and published versions via the

Workflow Status Bar.Note that the in a final state

version will be different to the URL for the content in

the draft state.
Note
titleNot for secure publishing

Same-space publishing is for when you want to direct users to a version of the content that is not currently in draft. 

(warning) the user will not be directed in all cases to the content version that is not currently in draft  - for example, if viewing on a mobile device

(warning) it is not a secure publishing option to hide draft content

While view only users might default to seeing the approved content the most up to date content is still visible through the page history or search index. 

In addition, some mobile-based browsers can only display the latest version.

If there is a formal requirement (compliance; organizational policy) that draft updates are not visible to some users we recommend using Different-space publishing where Confluence permissions can hide the draft space content entirely.

Notifications

The {set-message}

a draft state.

Notifications

The set-messagemacro can differentiate between draft and published versions of content.

PDF and Word export

When exporting content as PDF or Word using native Confluence features, either as individual pages or an entire space, the distinction between the published content vs. the draft  content will be respected.

If the final state content is edited but there is no transition

  • the content version in the final state will change

  • the workflow published content will remain as the version created when the last transition to the final state occurred

To ensure that the current content in the final state is the workflow published version you should include an updated transition in the final state.

For more information, see: Confluence PDF and Word Export.

App configuration

Anchor
appconfig
appconfig
Setting

Where

Notes

Workflow Activity and Drafts Visibility

Determines which users can access the workflow information and tools on a page. If using same space publishing the users not in this group will see the approved version of the content by default.

Default View

Determines whether Published content is seen by default.

Published View Macro Transform

Determines whether

{

include

}

-page and

{

excerpt-include

}

macros display most recently

Published version

published (the last version created on transition to the workflow final state) content or, regardless of workflow state, the latest version of content for the excerpt source with an applied workflow.*

*  When
  • Enabled - only display last approved version

  • Disabled - display the latest version

When using other macros including third party apps

such as

The only macros that display their final version content are the Gliffy For Confluence macro .

See also

  • Different-space publishing
  • Remote-space publishing
    excerpt macros
    • include-page macros are only macros that can display the final version content

    • Artemis Multiexcerpt page macro can be configured to use the only last approved version (generated on a transition to the workflow final state) when Published View Macro Transform is enabled. feature enabled in both MultiExcerpt and in CDM a MultiExcerpt Include can recognize CDM workflow statuses and will only include approved content

    Other publishing options

    Filter by label (Content by label)
    showLabelsfalse
    showSpacefalse
    cqllabel = "concept-publishing" and space = currentSpace ( ) and parent = "6428167913"