I've made more progress on the web content templating in Alfresco this week. I've really gotta think of a better name for it than that, but I'm dubious about dubbing it web content management as it's missing quite a lot from the set of WCM functionality that's coming to Alfresco later this year.
Anyway, the templates now support full previewing of content from within the application, just by applying a special web page template to a space. Here's some screenshots of this in action:
This is the top level web content space, so the various sub-spaces simply mirror the UNIX directory structure of our current production site. So, each page is represented by a space and the individual files within each space are then used to build up the content of the page. If you really wanna know the details:
page.properties contains various metadata about the page, like its name (used in the navigation elements), title and meta tag information
site.properties is a special file that exists only in the top level of the site and - logically enough - contains information about the site itself, like it's URL and the default templates to be used
Here front_content.html contains the main content of the page, which is everything except the page header, navigation and footer elements. In other pages the files main_content.html and right_content.html are used together to form a two-column layout
From here, you can select View Details from the More Actions menu to bring up the details screen.
The best thing about this preview is that you can click around within the page and load up other pages straight from Alfresco. This takes all hyperlinks, images and other such stuff that it finds in the page content and points them back into Alfresco, via the template or download servlets - true WYSIWYG previewing!
There's a few things still to do before the system's fully production-ready.
Integrating the news template that displays the x-most-recent items on our press releases page
Building a template that parses an iCal file on the server and displays a list containing our forthcoming events
Making a template that performs a Lucene search on the web content and displays a list of matching pages
Other things that would be useful:
Have an alternative 'Print this page' template available
Make the revision history of each page available via a web page or an RSS feed
Support logging in to the site, and having restricted content magically become available!