The final stage in the CMS workflow process is for a moderator to approve the page. After an editor has approved a page, a user with moderator rights is responsible for publishing the page in a particular channel and verifying the page content and page properties. The moderator controls whether the pages with the WaitingforModeratorApproval status are published to the live site. The pages usually get this status after they have been approved by the editors. However, there are exceptions, including the following:
If publishing properties for example, the publishing schedule or the display name of an existing published page have been changed, then the page bypasses the editor and gets the WaitingforModeratorApproval status from the Published status after the changes to the properties have been saved.
If a page originally was declined by the moderator, and subsequently its publishing properties have been changed by the page author or the page has been resubmitted without changes, then the saved page bypasses the editor and gets the WaitingforModeratorApproval status from the ModeratorDeclined status.
If a published page has been moved and its content has not been modified, the page status in the new location changes to WaitingforModeratorApproval, bypassing both the Saved status and the WaitingforEditorApproval status.
When a user with moderating rights logs on to a CMS site and switches to Edit mode, they have the same options as an editor available in the Web Author console (Figure 6-4). They can use the Approval Assistant to approve or decline pages, or they can use the Approve and Decline commands in the console to approve or decline pages individually.
If a moderator modifies the page content, saves the page, and resubmits it, the page status changes to WaitingforEditorApproval. If the moderator changes the page name, description, or values for custom properties and clicks Save Changes in the Page Properties dialog, the page status also changes to WaitingforEditorApproval. The page content, custom properties values, description, and name have to be approved by the editor first; moderators cannot approve their own changes to any of them.
However, if the moderator changes the page display name and the standard properties, such as the page publishing schedule and the Web Robots check boxes, the status of the page stays the same: WaitingforModeratorApproval.
NOTE: Moderators can change all standard properties except the page description. Changes to the page description property should be approved by the editor.
This functionality is implemented in CMS in order to separate the responsibility for the content from the responsibility for page publishing to the live site: Editors are responsible for the content, while moderators are responsible for the publishing. In addition to approving and declining pages, before moderators approve a page for publishing, they can modify the following properties of the page (Figure 6-8):
Display Name: The Display Name property defines the text for the link pointing to the current page from other locations on the site.
Page publishing schedule: The publishing schedule defines the period of time when the page is available on the live site in presentation mode, as follows:
Start Publishing can be set either to start immediately or to start at an exact date and time. The default is the page's last modified time. The exact date and time can be typed in, or the date can be selected by clicking the calendar icon, as shown in Figure 6-8. When the calendar is displayed, it points to the currently specified date; you can navigate to the desired date.
The start date of the page can't be earlier than the creation or start date of the containing channel, whichever is earlier. This applies to the whole hierarchy of channels that contain the current channel, which, in turn, contains the current page.
Stop Publishing can be set either to never stop or to stop at the exact date and time. The default is Never. As before, the calendar icon provides the ability to select the date for the expiry date; or you can just type in both the date and the time. The expiry date can't be earlier than the start date.
Important Page: This check box sets up an additional flag on the page. This flag can be analyzed programmatically for example, inside a template file. It is not selected by default.
Hide When Published: This check box makes the page invisible after it has been published. Once again, this option can be analyzed in the code and changed programmatically at runtime, depending on the business logic implemented by the site designers. This check box is also not selected by default.
Two Web Robots settings: These check boxes define whether and how the page should be made available to Web robots. The settings define how the robots META tags for the page are generated at runtime, as follows:
The Web Robots Can Crawl Links check box allows Web robots, also referred to as spiders or crawlers, to follow links from the page. If this box is selected, the following META tag is inserted into the HTML <HEAD> container at runtime:
<META name="ROBOTS" content="FOLLOW, NOINDEX">
The Web Robots Can Index This Page check box allows Web crawlers to index the page. In this case, the following META tag is inserted at runtime:
<META name="ROBOTS" content="INDEX, NOFOLLOW">
If both Web Robots check boxes are selected, as by default, the META tag is as follows:
<META name="ROBOTS" content="FOLLOW, INDEX">
Leaving both boxes empty causes the following META tag to be generated:
<META name="ROBOTS" content="NOFOLLOW, NOINDEX">
Figure 6-8. Sample page standard properties
NOTE: In a rare case, you may need to set up a start date that is earlier than the current date. If you try to set up a start date for a page that is earlier than the corresponding date for the containing channels, the Web Author will revert to the original date without warning you.
Web robots are programs that automatically traverse Web sites. They are also known as spiders or crawlers. An example of a Web crawler is a search engine program that indexes your site for further searches.
Compliance with robots META tags is voluntary. However, most well-known robots will honor robots META tags.
For more information on Web robots, have a look at The Web Robots Pages at http://www.robotstxt.org/wc/robots.html.
After the moderator has approved a page, depending on the page publishing schedule, one of the following three events occurs:
If the current time is earlier than the page's Start Publishing time, the page status is set to Approved; the page will be available on the live site when the start time is reached.
If the current time has passed the page expiry date, the page status is set to Expired; the page is not available on the live site.
If the current time matches the page publishing schedule, the page status is set to Published; it is immediately made available on the live site in presentation mode (Figure 6-9).
Figure 6-9. Published sample page in Edit mode
NOTE: An approved page is not locked and is owned by everybody.
If a page is declined by the moderator, then the page status changes to ModeratorDeclined, and this is how the page appears in the author's Production Manager. Declined pages will only be displayed in Edit mode and will not be displayed on the live site until the moderator reapproves the page.
This concludes our discussion about the three-step CMS publishing process. However, before we move on to the next section, it is worth mentioning an anomaly in the workflow between editing existing page content and editing existing page publishing properties. If you change the content for a published page, then save and submit the changes, the original version of the page is available on the live site until an editor approves the new content. However, if you take an existing, published page and change its publishing properties, such as the publishing schedule or the display name, then the existing page stops being published until it is approved by a moderator. This behavior may result in the page's disappearing from the live site and then reappearing at a random time. Undoubtedly, it can create problems for your users.