CMS Applications

All thoughts on various CMS apps including Joomla, CMS Made Simple, and blogging tools.

CMSMS 1.6 – Chapters 10 and 11

April 21st, 2010

The final two chapters of the book deal with advanced topics that can enhance a site that’s already up and running. The first extra feature to be examined is enabling a site for multi language capabilities with user submitted,  not automatic, translations. I can’t say I’ve had a need to do this yet, but when creating a site for an international corporation this would be a vital step. The next items of interest I felt were way out of place as they should have been dealt with much earlier in the book in the chapter on creating templates.  Creating additional editable content blocks and optimizing the site for search engines really should be thought about when the site is first being coded and are far more instrumental than multi-language capabilities. After taking a look at user defined tags and an events dispatcher there is a study on integrating jQuery into a site which is yet another item I feel better belongs in the chapter about templates. In today’s world jQuery and other JavaScript libraries are becoming so widely used that they really are part of a template and not just extra functionality.

Chapter 11 closes the book with a rather dull read on creating site and database backups, which must be done with two modules, seeking help on any CMSMS problems, and performance tuning. These are important concepts, but it was a dreary read and I think perhaps the advanced functionality or a case study of a really well done site would have been a better way to end the book.

Overall though, this is an incredibly useful and easy to digest manual for getting started with one of the best CMS applications available today.

CMSMS 1.6 – Chapter 9

April 20th, 2010

Chapter 9 dives into the <sarcasm>wonderful</sarcasm> world of eCommerce. The chapter wisely begins by explaining that for a site which is mostly eCommerce with only a few other pages, CMSMS is not the solution. Even with this little preface though, I think the merits of CMSMS as an eCommerce platform were not addressed in full enough detail. Also notably underrepresented in the opening pages of the chapter were an overview of the myriad eCommerce solutions available for CMSMS and the fact that they are incredibly incompatible with each other – as in they will actually destroy your entire website.

So, after the far too sparse overview and warnings the book dives into the Products module which sadly needs a custom field added for image.  Creating templates and categories is covered and detail and the CMSMS eCommerce solutions start to look acceptable.

The next module to integrate is the Cart module which thankfully is easy to connect to Products. After Cart comes Orders which has tons of dependencies and templates to worry about and also needs to be integrated with Self Registration. This is where the eCommerce solutions begin to get very annoying to work on as there are so many forms to style – login, billing info, shipping info, etc.

The last step discussed in detail is setting a Paypal gateway. The book makes sure to explain the work one must do outside of CMSMS, setting up dev PayPal account, connects the CMSMS Shop to PayPal using IPN.

Optional modules for taxes, shipping, promotions, and gift baskets are also mentioned but not really explained. If you’re looking to use features like these, it’s better to just use a dedicated eCommerce platform as getting all of these independent modules to communicated with each other can be misery.

Overall the chapter does a good job introducing and explaining the eCommerce setup in CMSMS but it really glosses over the  more important aspects such as choosing the right eCommerce platform, building a secure environment, fulfilling orders, and more.

CMSMS 1.6 – Chapters 7 and 8

April 19th, 2010

Chapters 7 and 8 guide the user through all of the advanced functionality made possible by 3rd party and custom-built modules. The gallery and form builder plugins are examined in detail which only helped to reassert the opinion I already had that these are the best gallery and contact form plugins available on any CMS. Next came the newsletters module which is a cool concept, but the book glossed over the fact that sending emails really should be done from a dedicated email server through a system outside of your CMS. Surprisingly absent was coverage of the  blog, guestbook, and forum modules as these features show up time and time again on  requirements lists.

Chapter 8 deals with creating new module by using the CTLModuleMaker module. That’s right, you can use a module making module to create a new module. The book walks the user through the steps of  creating hierarchy, creating templates,  and integrating the module into the site search. Thankfully most of this difficult work is prefaced by encouraging the user to thoroughly search existing modules for the desired functionality before tackling the somewhat difficult task of creating a brand new module. The idea of modifying and combining existing modules to achieve new functionality is also encouraged with an example of turning the general feedback module  into a help ticket system.

These two chapters are really starting to get into the heart of CMSMS, but if you’re just a designer or an end user, you can probably put the book down at this point. For hardcore developers, these chapters mark the point where you should stop skimming and start really reading.

CMSMS 1.6 – Chapters 5 and 6

April 15th, 2010

In chapters 5 and 6 it starts to become really obvious what makes CMSMS so darn simple. Modules are a familiar part of any CMS but they’re often plagued with problems and difficult to configure, but alas, this is not so with CMSMS. The news module is given quite a bit of attention as it is part of default install and is so  flexible it can create anything from a simple “latest headlines” widget to full blown multi-category blog with custom fields. The search module is then examined, which, admittedly, takes a bit more work to configure than searching in WordPress. Following the search module come an explanation of other default modules and their suggested uses – most of which really are astounding in their simplicity and usefulness. The image manager has a built in image editor, the menu manager can easily be used to create a sitemap, and the print module can print pages to PDF. Wow!

Following the exciting discussion on modules is the bit more dreary but incredibly important overview on users and permissions. As the chapter explains, the default user types are editor, design,  and admin, and in my experience, these three always seems to be  enough. For those who want to know about going beyond the default user types the book certainly provides more than enough information.

One somewhat confusing thing about this chapter is that at the very end of the users section the book discusses the archiver module. This module makes archives of all files and their changes across the site. It is presented in the chapter as a great tool to allow only the site admin to use, but I think it would have been better discussed in the modules chapter, or maybe the whole users and permissions chapter should have preceded modules. Oh well, there’s still been a lot of great info so far.

You can preview chapter 6 here.

CMSMS 1.6 – Chapter 4

April 14th, 2010

Chapter 4 is really what CMSMS is all about – creating templates quickly and easily. The first introduces Smarty tags and how they can be used in both templates and in content, and then details basic smarty parameters. Next the readers is shown how to create templates and link them to CSS files which culminates in an in-depth walk-through of starting with a static mockup on the local machine and creating a full CMSMS template. For any designer/developer unfamiliar with CMSMS, give this chapter a read and you’ll be amazed at how much easier creating a template is in this system compared to the miserable XML uploads of Joomla or the dozens of files to edit in WordPress. It literally only takes 5 minutes to create a static mock-up into a fully integrated template with CMSMS, so do yourself a favor and look into it.

New Book – CMS Made Simple 1.6

April 12th, 2010

I’ve been lucky enough to have been offered a free copy of a new book from Packt Publishing called CMS Made Simple 1.6 – Beginner’s Guide to read and review. I plan on reading a few chapters a week and will post reviews as I go along. I kicked things off last week with the first two chapters and am pretty happy with the read so far.

The book opens by addressing the important questions of who, what, and why? A brief introduction explains who will most benefit from reading this book, what a CMS is, and why one should use  CMS Made Simple. By introducing the concept of separating layers of code and explaining how a CMS easily enables this best practice, the book engages both the novice and the seasoned coder and then walks them through the installation process in the second chapter. This chapter reads as a friendlier version of the standard CMS Made Simple installation documentation, which anyone unfamiliar with concepts like databases and file permissions will surely appreciate. The chapter finishes by succinctly reviewing the administrative interface for the site. For those already familiar with CMS applications, I suggest you begin here as this is really the first bit of new material you will encounter, and for those who are novices, I recommend reading this part twice so that the following chapters are easier to follow.

Check out more about this book on the Packt Publishing website.

CMS Overload

April 8th, 2010

This is a fairly exciting week for me in the world of CMS Applications. I am learning a new application called Zotonic which runs on Erlang which seems to be a hyrbrid framework/CMS. This is excellent for me as I was planning on picking up a framework anyway! I also was lucky enough to receive a free e-copy of a book about my favorite CMS, CMS Made Simple. I plan on reading it over the next few weeks and then posting a review when I’m done. Meanwhile,  I’m still working on a few WordPress sites and am thinking about giving Drupal another try.

New Project – Safe CPA

March 23rd, 2010

I’ve added a new project to my portfolio, a website for a startup Financial/Tax advising company in the Milwaukee area. The site was designed and developed for WordPress using my new design and markup framework. The project gave me an opportunity to  spend some more time in Illustrator, explore some new WordPress plugins, and work out the kinks in my framework (more on this to come).

Please take some time to visit Safe

SEO Tips for Content Producers

March 11th, 2010

Much of the focus of articles about Search Engine Optimization deal with what the designer/developer needs to do and tends to overlook the other half of the battle – how to continually produce optimized content after the initial design. Maintaining, updating, and promoting the site is crucial for the long-term success in search engine rankings. Thankfully producing quality content through your CMS/Blog Platform is easy to do and yields enormous benefits!

Update Often

Small, meaningful, and frequent updates are loved by both your users and search engines. A search engine, just like someone browsing the web, will begin to think that a site which has not been updated in years is no longer relevant. Therefore, the longer your site sits with old content on it, the further back in search engine rankings you will find yourself. Keep content fresh by announcing news and updates, posting to a blog, and changing general information pages as your business grows.

Headings and Titles

Page titles and headings on the page are the quickest way for a search engine to determine a page’s content. Try to sneak keywords into page titles and headings as much as you can rather than making them generic. For example, try using “Gardening and Landscaping Services” instead of “Our Services” or “Mowing and Clipping Rates” instead of “Prices.” Also make sure to use the heading tags to style page headings rather than just formatting text to be large and bold. Heading tags will create the same look and feel and also provide the benefit of indicating to a search engine that this is important information.

Page Location

Search engines, like your readers (assuming they’re English readers), read a page from the top down and always consider information near the top more important than info towards the bottom. Therefore, keep your most important, keyword laden, frequently updated paragraph towards the top of your page and move images and static text below this.


In addition to using heading tags for major headings on the page, bold and italic formatting can be used on key words to attract the search engine’s attention. Try “We are proud to be Milwaukee’s #1 Landscaping Company” rather than “Milwaukee’s #1 Landscaping Company”.  Do not overuse bold and italic text and it’s both unappealing to readers and can actually reduce your search engine rank.

Use a Variety of Keywords

Remember that not everybody is going to use the same search keywords to try to find the same site. Some may type “landscaping,” others “yard services”, while others may search for something specific like “hedge trimming.” Talk to family, friends, and coworkers about words they would use to search for your business and do your best to use them all across your site. This ensures that someone will find you even if they are searching with a keyword you personally might not have associated with your site.

Don’t Repeat Yourself

Repeating the same keyword or phrase over and over raises big red flags to search engines.  Search engines are smart enough to know that repeating one phrase in large, bold letters over and over is not a natural presentation and will assume that the site is a spam site attempting to attract attention. As a general rule, try to use a keyword or phrase no more than 3 times per page.


Images are worth 1000 words to readers, but they’re only worth a few words to search engines. Try not to rely on images too much and when you do use images, make sure to use the title attribute. Give each image a meaningful title that both reflects what is depicted in the image and involves a keyword or two. If you upload an image of your latest landscaping project to your homepage try to give it a title like “Landscaping Project – Decorative Fence and Flowers by Your Company Name.”

Links on Your Pages

Search engines use links on your website as a major clue to the site’s purpose. Try to use keywords in links when linking to both outside sites and other pages on your site. For example, instead of “To find out more about our services, click here” write “More landscaping and gardening services.”

Links to Your Pages

Incoming links are incredibly valuable to your site’s search engine rankings. In fact, they are nearly as important as everything else in this article combined. Try to get links to your site from any other sites you might maintain, from friend’s or family’s sites, from other companies you do business with, and more. Try to find a directory that lists similar businesses such as One of the best ways to place some links back to your site is to read forums, online news stories, and other online articles and leave a comment that links back to your site. Do your best to get your site listed on as many other websites as possible!

Write Articles

On great way to get external links to your site is to submit content to other sites. Try writing an article for eHow, eZine, TellMeHowTo, Digg, Reddit, or any similar site. Make sure to create an author page with a link back to your site and potentially attract hundreds of new customers each time you publish an article.

That’s All, Folks!

Actually, that’s not all, but it’s a great start. Search Engine Optimization is an infinitely nuanced art that requires constant study and practice, but if you follow the steps outlined in this article, you should enjoy positive results with minimum effort.

WAMP, Framework, Illustrator, and CMSeses

March 5th, 2010

First of all, what is the plural form of CMS? Anyone? Anyone?

As part of the never-ending learning process I have decided to dedicate the next few weeks to a lot of projects I should have started years ago. To begin, I finally installed a working WAMP environment on my machine so that I can test server -side code, including CMS installations, locally. This should save me hours upon hours in development time in the future.

I also finally finished developing my own front-end web framework. It’s a hybrid of the 960 Grid System, my own default style preferences which I use in the vast majority of my projects, and 6 jQuery plugins which I always reuse. I realized after a while that I just kept running into and spending hours solving the same problems with each project I started, so I instead decided to work out all of the nitty-gritty details and create one clean web page with all the bells and whistles that works in all the major browsers. Now I should be able to just copy that source folder and apply project-specific colors and images and be done with most of the markup.

I’m also finally taking the time to learn all that there is in Photoshop and to learn Illustrator. I’ve never done vector illustrations before but as I’m doing more and more design work it’s becoming a dire necessity. I’ve only been at it a week and it’s been a bit more difficult than I would have hoped, but within a few weeks I should have the basics conquered.

Getting  more familiar with the various CMS systems available is also a major item on my to-do list over the next few weeks. I’ve been using CMS Made Simple and WordPress, and I’ve decided that I just plain don’t like Joomla. I think I’ll take a look at the latest offerings from WordPress and CMS Made Simple as well as checking out Cushy CMS and maybe Drupal. Does anybody have any CMS recommendations?