Does Umbraco 7 support approval workflow out of the box?
We've been a long time user of Umbraco, since version 4. One sorely lacking feature has been a workflow that would allow line level content authors to make changes to pages while only someone in Communications can review, approve and publish those changes. We had this type of feature nearly 20 years ago in our ColdFusion based CMS.
Has anything been added to Umbraco 7 either in our out of the box that allows for approvals before content goes live? How about staging content for proofing before live?
Have you tried using the "Send for approval" option? You can read a little bit about it on Chriztian's article about how we did the 24days site here under the "Notifications" heading http://24days.in/umbraco/2012/wrapping-up/
We currently use the Send for Approval with our existing Umbraco 4 site. It works ok, but it's not a true approval workflow. I cannot require that a department head approve content and then the communications dept. approve before a page goes live. There is no built in rejection method. Also, I always felt it very dangerous that when someone starts editing a page, it isn't checked out or locked so someone else doesn't edit at the same time.
New out is Plumber written by Nathan Woulfe. I've had a quick look at it and it has loads of features, though it would be better to direct questions to him. He did create a Reddit post to discuss this
I'll probably publish the beta to the package repository this week. I can't see any major changes between beta and v1, but keep in mind that there may be breaking changes in the v1 release.
Does Umbraco 7 support approval workflow out of the box?
We've been a long time user of Umbraco, since version 4. One sorely lacking feature has been a workflow that would allow line level content authors to make changes to pages while only someone in Communications can review, approve and publish those changes. We had this type of feature nearly 20 years ago in our ColdFusion based CMS.
Has anything been added to Umbraco 7 either in our out of the box that allows for approvals before content goes live? How about staging content for proofing before live?
Hi Connie
Have you tried using the "Send for approval" option? You can read a little bit about it on Chriztian's article about how we did the 24days site here under the "Notifications" heading http://24days.in/umbraco/2012/wrapping-up/
Could this help?
/Jan
We currently use the Send for Approval with our existing Umbraco 4 site. It works ok, but it's not a true approval workflow. I cannot require that a department head approve content and then the communications dept. approve before a page goes live. There is no built in rejection method. Also, I always felt it very dangerous that when someone starts editing a page, it isn't checked out or locked so someone else doesn't edit at the same time.
Found a commercial plugin http://www.moriyama.co.uk/products/workflow-for-umbraco/ not sure if it really works or not. I don't even know if it works in Umbraco 7 or not.
Hi Connie - did you manage to find a solution to this?
New out is Plumber written by Nathan Woulfe. I've had a quick look at it and it has loads of features, though it would be better to direct questions to him. He did create a Reddit post to discuss this
Thanks for the shoutout, Jonathan!
Connie, like Jonathan mentioned, I've written a workflow package, it's still in beta but please have a look...
There's a live demo site at http://plumber-demo.azurewebsites.net, with a set of test users:
Username: TestUserA - TestUserF Password: UserAPassword - UserFPassword
It's not available in the Umbraco package repository just yet, but should be soon. The latest build is available from https://ci.appveyor.com/project/nathanwoulfe/umbracoworkflow/build/artifacts as an Umbraco package, ready to install.
Hi Nathan
I'm having a play with it now. Looks good! Any idea on when it's likely to be a formal package?
Hi Connie
I'll probably publish the beta to the package repository this week. I can't see any major changes between beta and v1, but keep in mind that there may be breaking changes in the v1 release.
Hi Nathan
That's great. If you remember, can you let me know when it's out, so I can take a look?
Many thanks Claire
Nathan, I looked at the package but cannot get in as the approver: TestUserF
I also tried to install plumber but the install threw an error
Hi Richard, what was the error? What version of Umbraco?
Version 7.6.3
Wrong Local header signature: 0x474E5089 Exception Details ICSharpCode.SharpZipLib.Zip.ZipException: Wrong Local header signature: 0x474E5089 Stacktrace
at ICSharpCode.SharpZipLib.Zip.ZipInputStream.GetNextEntry()
at umbraco.cms.businesslogic.packager.Installer.UnPack(String zipName, Boolean deleteFile)
at umbraco.cms.businesslogic.packager.Installer.Import(String inputFile, Boolean deleteFile)
at Umbraco.Web.Editors.PackageInstallController.PopulateFromPackageData(LocalPackageInstallModel model)
at Umbraco.Web.Editors.PackageInstallController.Fetch(String packageGuid)
at lambda_method(Closure , Object , Object[] )
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>cDisplayClass10.9(Object instance, Object[] methodParameters)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ActionFilterResult.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Dispatcher.HttpControllerDispatcher.
If you're installing v0.2.0, it has a minimum Umbraco version of 7.7.
There is an archived version available on the project page, which should work on 7.6, but going forward it will be 7.7 and above only.
is working on a reply...