From my Notebook >

Processwire post-launch notes

This week I launched two new websites powered by the Processwire Content Management System/Framework (CMS/CMF). Here’s what I’ve found so far.

Solid, newbie-friendly API

If you’re on a deadline, but you know PHP at least at beginner-intermediate level, breaking Processwire via newbie API calls is like trying to drown yourself in a mud puddle. Meaning, you probably won’t break your site.

You can sit down and write echo $pages->get("/portfolio")->body; and no matter where you are in your template code, you’ll get the body text of your site’s /portfolio page. Want the title? Change ->body to ->title. Want the URL? Change ->body to ->url. Want the custom field you made, called portfolio_copyright_information? Change ->body to ->portfolio_copyright_information.

That’s a simple example, but once you learn how that works, as well as how to do a simple foreach loop to handle lists of things (images, articles, whatever), you can tackle most data display problems.

When you’d rather be doing other things with your data, like arranging it creatively or figuring out novel ways to navigate through it, that is exactly the killer feature you want.

Lightweight custom fields CMS

A lot of people are searching for one of those. If your data sets are unique and you don’t want your clients digging around in some ugly enterprise CMS control panel to figure out where you “hid” everything, Processwire is the software to use.

You can label every custom field and pack it with helpful instructions. You can strip things out of the admin interface easily. You can write your own custom login screen, or even your own control panel if you want.

And above all, this software will not bring your cheap VPS to its knees. It has a small footprint and is extremely sensibly built.

Also Ryan’s PHP formatting, as provided in the example site, is beautiful. It’s a real credit to the side that argues PHP is still OK as a templating language. :-) I cringe in shame every time I realize that my PHP bracket positioning is not standardized with tons of white space and commenting. Ryan does that. Really, take a look. I want to improve in that area.

Welcome to snippet land

If Ryan Cramer hadn’t provided so many little snippets of his own code all over the Processwire site, its outlook wouldn’t be nearly as promising.

Everything you need to know to create an extremely impressive website is provided on the Processwire site. I’m building a snippet library and will probably share it when it’s a bit bigger.

What not to use it for

If you’re still happily allowing your clients to create entire layouts inside of FCKEditor, you are not going to like the way Processwire’s default TinyMCE install strips your presentation right out of the site. Your favorite in-article-body media player? Poof, gone.

The solution is a bit awkward (add an extra textarea for embed code, or a field for a file upload), but good riddance. Those nasty layouts were going to throw a wrench in your redesign plans anyway.

What about other CMSes?

I also love and use Textpattern, and I support sites created in other CMSes such as MODx, Joomla, CMSMS, GetSimple, forum software, and so on.

I will still use those others, but even if you can see yourself becoming a beginner at PHP, I highly encourage you to make Processwire part of your kit.