I have problem at hand for which I'm confused about what is the best practice for going after it.

I have thought to intercept item creation process in Sitecore and read the site node properties. This idea is similar to what I have read regarding Site specific RTE HTML profiles.

Also solution should be extensible later to have per site/per language/per template wise workflows.

But is there any OOTB functionality for this?

If not what should be best approach to manage workflow with such cases?

P.S.: I have seen some projects to follow sprint-wise content workflows but that is not required by us.

Update

We have three types of user roles -

  • Global team users
  • Site specific admin users
  • Site specific-language authors

Problem is for global users and users who are admin for multiple sites. When these users want to approve particular content from workbox and it is difficult for them to find in 1000+ content items in that workflow from all sites and language versions of the sites in workbox.

up vote 12 down vote accepted

If the workflows are not drastically different, you can achieve 'site-specific' workflow via content security.

Step 1: Workflow security

Create a single workflow definition with some generic access roles for each state. Use these only to grant access to the workflow states.

Step 2: Content security

Create a security role for each site and assign it to where the content lives (e.g. sitecore\content\site1, sitecore\content\site2).

Step 3: Winning!

The Workbox and workflow in general take both workflow state access and content security into account. Users will only see items in the workbox that they have access to for both workflow and content, so users in the same workflow from Site 2 won't see items from Site 1 because they don't have permission to the content in Site 1.

Step 4: Advanced Ninja

You might want to do alternate steps for some sites. Maybe a 'approve with business' state that only Site 1 uses. In this case, using actions and state security that require a specific role will allow you to create users for one site that have access to this action while other sites use a different approve action. This allows you to simulate multiple flows within a single workflow state definition.

Alternate flow

You can also have completely separate workflow definitions and create site-specific templates which use different workflows. Suppose you have a 'content page' that is the same in every way between Site 1 and Site 2, but you want different workflows. You create a Site 1 content page template and a Site 2 content page template which inherit all the common presentation details and fields, however you change the default workflow on the site-specific template.

You'll have to play with insert options in this case to restrict which templates are used for which sites. Insert Option rules in the rules engine will help you with this.

Update based on edited question

Handling scenarios when the workbox is too full

If a user is looking for specific content, the workbox is not the place to do it. The workbox works well for teams who are keeping on top of their content. If you have 1000 items that need to be reviewed, then the Workbox just won't work for you. What if those 1000 items are in the site and language that the user needs to find their particular page? No amount of security or configuration will help that.

Instead, I usually suggest using the Gutters in the Content Editor. That way, you can just expand areas of the site and look for the correct icon. I have a quick 25 second video for turning on gutter icons available: https://www.youtube.com/watch?v=IkqG3OnTSvA

In this way, a user can make a more granular search for what they want and take action on the item.

  • 1
    The ability to edit an item is rooted in 3 things: write access to the item, workflow write access to the current workflow state, and language write access to the current language. If you are missing any of these permissions, you cannot edit an item nor will you see the item in your workbox. So in addition to Jay's steps above, I would also note: Step 2.5: Language Security: Create a security role for each of your languages to allow you to control a content author's language access. – Grant B. Oct 14 '16 at 16:35
  • @jays thanks for the answering. I have added more info in my question based on the answer. – Harsh Baid Oct 14 '16 at 20:59
  • Hi @HarshBaid, I have added an update for scenarios where your workboxes are tool full. The 'Alternate flow' described above will allow you to have separate workboxes for each site, but that doesn't help you if your actual site has too many items in the workbox. – Jay S Oct 14 '16 at 21:42

We ended up using Dynamic Workflow module from Sitecore marketplace.

Which gave us all of these features Site-specific workflows + Email notifications based on Sitecore Rules-engine + Content validations.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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