For some time now, it has been known that the Grails plugin contentmanager is a deprecated solution; instead we suggest that you use Weceem CMS for Grails. Further one of the sites that had previously been deployed on contentmanager has been successfully moved over to Weceem CMS for Grails.
If anybody is still using content manager plugin, please contact me (top of page) or email (support <at> nutricherry <dot> com), I will help you to migrate your site over, using the process I used below.
This blog entry discusses how I moved the seo-web-services Croydon website over to run on Weceem.
First, a little background on Weceem
This is not a complete reference document, see the Weceem documentation for more.
Weceem has a slightly different view of the world if you are used to contentmanager, in that everything you work with is a "node" or a piece of content that belongs to a space. So lets define these two items first.
Space: a group of content items arranged in a tree that together make up a site.
Node: each displayed content is made up of one or more nodes. There are nodes for many items, but importantly, there are Stylesheets, HTML and Template content types.
Setting up Weceem
Firstly follow the guidelines for installing weceem. At this point you should be able to connect to the Weceem installation using your browser, now login as administrator.
You should now see a tree view, this view represents the structure of your website. Expandable nodes are similar to content groups in content manager. There are several node types some of which are described here:
Stylesheets: For CSS data. You need to take the CSS that you have been using with content manager and either modify the default or create a new CSS file in this folder. Notice that there is a separate alias in the extended settings, make sure this ends with ".css". Typically these live in the stylesheets directory
Templates: Similar to the layouts used in content manager. Each page has a template that renders the menu and outer structure and controls where the content goes. Templates support GSP syntax and you can use standard taglibs. There are Weceem taglibs for rendering menus and content. Typically these live in the templates folder.
Folder: A holder of one or more content items. Does not render - only for grouping. These have no real equivalent in contentmanager.
HTML Content: These nodes contain HTML content and can have child content. These are like both contentgroup and content in content manager. Note that a HTML content node cannot contain GSP. HTML content can choose which template is used when rendering.
Accessing images and other files
Even a fairly trivial site needs access to images and other file types. Weceem provides for this by having a directory called WeceemFiles that is within the weceem application directory. Personally, I symlink this to another path, as I don't want all the content in a directory that could be deleted at the next deployment. To enable symlinking in Tomcat add the following attribute to the Context: allowLinking="true".
Within the WeceemFiles directory, there are folders for each space, the default space is called "_ROOT". Items in this directory are accessed relative to the webapplication's context. EG: /WeceemFiles/_ROOT/img.gif.
Moving content over to Weceem
For my example I had little enough content that I manually moved the pages over, as they needed a bit of TLC at the same time. However, for larger sites there is a Weceem import format for porting a larger site. Files and images required by the content were placed into the WeceemFiles directory as described above.