I had implemented Sitecore workflow (Draft - Awaiting approval - Publish) around 1 year back for a customer but now the customer wants it to be disabled.

Is it possible to disable workflow now? If yes then what will happen to items in the intermediate stages?

3 Answers 3


There is no easy way to disable Sitecore workflow.

You could remove the workflow item with subitems (workflow states, commands, actions) and select Remove Links options when Sitecore warns you that there are some items which link to the items you want to remove.

But I assume there are multiple items in Draft, Waiting for Approval and Approved state. What should happen with them?

For Approved items removing both workflow and workflow state shouldn't matter - they are approved anyway and published, right?

For items in Draft state and Waiting for approval state if you remove workflow and workflow state you may end up with publishing items which are not ready to go public.

I would suggest to remove the workflow from the __Standard Values items for any templates which use the workflow now. That would make sure that no new item will be added to any workflow state. Then for every item which is in Draft or Waiting for approval state you should ask content authors to either approve them and publish them, or to remove the version which should never go public.

After all items are in Approved state, you can remove the workflow with its states.


If removing the workflow from __Standard Values items will remove it from all the items which use that template, remove the workflow from __Standard Values only after there are no items in Draft or Waiting for approval state.


You can remove workflow from standard value of template. Just go to in standard value and reset default workflow

enter image description here


You can remove workflow from standard value of template. However, Workflow [shared]

,State and Lock fields will not removed under Workflow tab for existing items .

You can use PowerShell script for deleting these fields values.

$items = Get-ChildItem -Path $path `
        -Recurse |
         Where-Object { ($_.__Workflow) }

foreach ($item in $items)

function RemoveWorkflowAndState([Sitecore.Data.Items.Item]$contentItem)

            $contentItem.__Workflow = ""
            $contentItem."__Workflow state" = ""
            $contentItem.Editing.EndEdit($false, $false)

    Write-Host " -" $contentItem.Name $contentItem.ID

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.