Start learning with our library of video tutorials taught by experts. Get started
Viewed by members. in countries. members currently watching.
In CMS Fundamentals, James Williamson defines content management systems (CMSs) and explains their role in web site development. The course demonstrates the different CMS solutions available today, including WordPress, Drupal, and Joomla; reviews CMS terminology and best practices; and shows how to develop a content management strategy. Guidelines are also included for evaluating a potential CMS, whether hosted or self-hosted, open source or proprietary, and choosing a CMS based on a specific need or focus.
The larger and more complex a site is, the harder it is to properly keep track of its content. At some point, tracking revisions, maintaining previous versions, and restoring files becomes impossible to do manually. This is where version control comes in. Version control, sometimes referred to as revision control or versioning, is the process of managing changes to content across various systems and workflows. In terms of working with content management systems, this often means tracking changes to content, assisting with collaborative workflows, and storing older versions of articles and files.
Not all systems have version control built in, and truthfully not all workflows or CMSs need version control. To help you to decide if version control is something you need for your projects, let's examine some of the ways the version control can be used in a CMS. One of the first and most obvious uses of version control is to store older versions of content. Version control tracks content as it's added to a CMS. If the content is changed or edited in any way, an older version of the content is saved and stored within the database.
This can then be accessed, restored, or reused as necessary. Version control also helps to add complexity to many author/editor workflows. Check-in/check-out workflows are great example of this. Imagine that you have multiple authors and editors working on the same article. If one of the collaborating authors added new content, at the same time that one of the editors was making changes, they would both run the risk of overriding the other one's work.
By using version control, the editor could check out the article, which would then inform the author that the article was currently being edited. The author would have to wait for the editor to check the content back in before she can proceed to add her changes to it. In addition to check-in and check-out many versioning systems allow administrators to track the editing process, issue communications based on changes, and review content by enabling side-by-side comparisons with older content.
If you've ever used the Track Changes option for a word processor document, you're familiar with how this type of workflow might work. Several version control systems also allow branching, which enables you to create a separate version of content once changes have been made. This allows you to easily create multiple versions of content that share a common starting point. These branched files then can be either merged, repurposed, or deleted once a final decision on the content version has been made. As I mentioned earlier, not all content management systems feature version control, and those that do often vary widely in their capabilities and integration levels.
Most open-source CMSs will offer multiple version control extensions or plug-ins that will give you options on what type of version-control features you want or that you need to use. There are also many stand-alone version control clients that's you can integrate with your CMS as well, so you're certainly not without options if you decide to add version control to a system at a later date. Now the two most common version control systems are Subversion and CVS. CVS, or Concurrent Version Systems, has been around the longest and is still used in many CMS integrations.
Subversion is an open-source Apache product aimed at extending and replacing CVS. It boasts the widest adoption of all version-control systems and offers a lot of flexibility when setting up version control for a project. Before we move on, I think it's also important to mention that while version control can be an important part of any workflow, careful thought and preparation needs to go into making the decision as to whether to use it not. As I discussed previously, version control isn't necessary for every project, and you should be aware of the layer of complexity that it's often adding to your workflows.
Also, while great in theory, version control can limit workflow flexibility and can be subverted if all participants don't follow their roles rigorously. As with most CMS features, I recommend trying it out before making huge changes to the way that you work to assure that it gives you the capabilities you need without negatively affecting your production.
There are currently no FAQs about CMS Fundamentals.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.