Back from vacation. I took a week off in OBX to get my eyes off computer screens for a while. We didn’t have WIFI down there, which turned out to be a good thing since I was able to relax and only answer a minimal amount of work-related email (they had 2 PCs on site).
Anyway, I’m very excited about TouchPointCMS development. It’s looking to be a very promising and solid CMS with endless add-on functionality. It’s also amazing how much faster this version runs over the old adhoc’d versions. One of the last updates to TouchPointCMS was improving the caching mechanisms used throughout the site in order to decrease load times and save on server resources.
I’m also finding that writing add-on modules now is incredibly easy. For example, we’re deploying TouchPointCMS for smart-spice.com and they want to include a spice manager. We can do this pretty quickly, considering a basic module consists of roughly 3 core files (5 if using code-behind):
- The user control that the end user sees (.ASCX and .CS)
- The user control that the CMS user sees for management (.ASCX and .CS)
- A meta.config file for SQL related to installation, deletion, generating instances, icon, etc.
Essentially, that’s all you need for building a module. For the spice manager, I combined functionality from the included Blog and Photo Gallery modules to allow for a simple spice list manager with images. The front end user control is nothing more than a ASP.NET ListView control bound to the spices for that page.
The modules that you create are automatically loaded with the web page. If you want to customize the placement of the module, such as having a Events module off to the left or right sizes of your page, you can deselect the Render Inline Module option from the CMS. This will disable the automatic rendering of the module, allowing you to use the <tpc:Event runat=”server” /> instance to create a list of events wherever you like on your template file. If you want to use events from another page, just include the PageID=”6″ attribute, where 6 is the page ID you wish to pull from.
Check back later for updated CMS development and release!