When you’re working on a web project, one of the most important pieces to the puzzle is the content that’s going to be published. After all, we build websites and applications to get other people to read our articles, see our videos or listen to our audio. The process of planning, developing and organizing content is often referred to as "content strategy". The goal is to answer a number of content-related questions, such as:
- Which content goes where on the website and why does it go there?
- Who will create it and when?
- What should the tone of our content be?
- And lots more.
Working on web content however, can be tricky. Content often exists in several locations - a blog, individual computers, and even databases. Besides that, the content for the web is usually in different states of completeness, or sometimes has a very different style, and needs to be edited and/or reviewed by several people. Also, it can be difficult to get content organized and finished on the new website while it is being developed, since not everything has been finalized yet.
GatherContent: what is it, how does it work?
To help with the daunting task of preparing written content for a web project, a few very bright people from the UK built GatherContent.com, a web application that makes it easy for teams to collaborate on the organization, creation and editing of web content. Having used GatherContent at Agentic for a number of projects now, we found that clients really like the simplicity of the tool. Since GatherContent is an application that’s completely tailored to helping with content strategy, content editors aren’t distracted by other menus or tasks on their website. They can focus solely on getting their content ready for their website.
GatherContent allows members of a team to mimic the architecture of their website by creating pages, and placing those pages in a menu structure. Each page can have different fields and information attached to it, such as an intro, file fields and many others. A page has different moderation states, so it’s clear to everyone working on the project which pages are complete and which ones needs work. It also allows metadata to be assigned to specific pieces of content, such as tone, purpose and message. This means that it provides extra information to the writers to assist them in writing the content.
Our place for GatherContent in our build process is that it simplifies the method for people to use a collaborative workflow to write, edit and approve content. It has also helped in our development of information architecture (IA), as clients get a more hands-on feel.
One issue that we have identified is that clients don't always understand that each GatherContent page corresponds to a single content page on the new website, i.e. a node page in Drupal's case. Several of our clients expected to be able to create listing pages in GatherContent, which is not how GatherContent works.
From GatherContent to Drupal
Once all the content has been finalized in GatherContent, it’s time to get it into your website. In our case, that means moving content from GatherContent to Drupal. When we started using GatherContent at Agentic a few months ago, solid Drupal integration wasn’t available yet. We immediately realized that if we were going to use GatherContent long term, we would need to make GatherContent talk to Drupal nicely.
Starting with some pieces of code that the GatherContent developers had written for their Wordpress plugin, we built a Drupal module that connects GatherContent to Drupal. After going through a number of iterations to make sure the code is up to par with Drupal standards and is secure (important especially if you’re importing content from somewhere else into your website), the module is now available on Drupal.org.
The GatherContent module for Drupal currently allows you to import GatherContent pages as Drupal nodes. Importing pages is really straightforward. First, you configure your account name and API key, and select the GatherContent project you want to import pages from.
Next, an import wizard allows you specify which type of content you want to create, and to select certain or all pages for import. Next, you click the ‘Import pages’ button and to import the selected pages into your Drupal site.
Even though the current functionality of the module is stable, there are a few more features that would be great to add before creating a first full release. You can see those features listed at https://drupal.org/node/1927630. If you have suggestions or ideas for functionality you would like to see added or changed, please leave a comment here or, better yet, create an issue at https://drupal.org/project/issues/gathercontent (patches welcome!).
Also, if you want to help out with GatherContent integration for Drupal, don’t hesitate to get in touch.