EvoBloggito
Recent website launches: all WordPress, all the time
Author: Ray Gulick; Published: Dec 10, 2011; Category: Uncategorized; Tags: None; No Comments
It was a busy fall at Evo. We actually turned some projects away because we could not get to them in the time frame required (which we hated to do, but not as much as we hate working 20 hrs/day for weeks to keep up with everything). We’d like to highlight four sites launched within the last couple of months, each of them using WordPress as a CMS.
New Mexico Mutual
NMM’s website was designed by K2MD (formerly Kilmer & Kilmer) of Albuquerque specifically to use Evo’s evo5cms WordPress theme, which is the HTML5 version of our Evo4 CMS theme that we’ve used for a couple of years. Working with another designer always gives us a chance to stretch our ideas about what evo5cms can do, and this one is no exception: most people would be hard-pressed to see similarities between the site and other evo5cms sites.
The site makes use of a “news” custom post type and has a membership system that handles access to protected site content.
Compelling Cases
Compelling Cases is one of our oldest clients, and it was gratifying to finally move them to a WordPress site which allows them to directly manage their own content. Built on Evo4 CMS theme, the site includes custom post types and a lot of custom fields to make managing site content a breeze.
We were also pleased with the ultra-clean look of the site, which presents content in an organized and uncluttered approach.
Sandia Science and Technology Park
SSTP’s new site replaced what might have been the last website on the planet to be made up entirely of images (all text set in PhotoShop). SSTP is very happy to have a website they can update directly, and the site includes just about every trick we know for enhancing WordPress as a content management system, making updates as quick and easy as possible.
The site was designed to be compatible with the appearance of existing print collateral, and is built on the evo5cms theme.
New Mexico Technology Council
The most recent launch of the four is NMTC’s new website, built on BuddyPress, which is a WordPress “super plugin” that turns WordPress into a social platform. NMTC has done some significant work in creating connections among various tech industries, interest groups, and companies in New Mexico, and their new website is a tool that they hope will help them strengthen those connections and foster additional connections.
This was our first experience with BuddyPress, which is a breeze to implement, but extremely complex to theme. We built a child theme on top of the BP Community theme. In addition, the site uses the s2Member membership plugin and Paypal Pro to handle membership purchases/renewals online. Also, of course, it utilizes custom post types and custom fields to simplify content management.
Child Themes: A Sanity-saving Approach to Redesigning/Hacking WordPress Themes
Author: Ray Gulick; Published: Oct 26, 2011; Category: WordPress; Tags: Child Themes, Design/Development, WordPress Themes; No Comments
A friend of mine, relatively new to implementing WordPress sites, emailed me yesterday asking for some advice. She was using Twenty-eleven as her base, and she had run into some problems bending it into the shape she wanted it. I called her and took a look at what she was doing. It became clear that the theme was already beginning to depart significantly from the original template code. Rather than creating a child theme, she was hacking page templates as well as CSS. Moreover, she sent me the Photoshop template that represented where she was headed, and I could not determine any relationship, structurally or visually, with Twenty-eleven. Twenty-eleven seemed to be the wrong theme for what she wanted to accomplish.
She wanted to know of a resource that would tell her how to get from the out-of-the-box Twenty-eleven theme to where she wanted to go with it. Lamely, I told her there was no such resource; no one could anticipate all the changes people would want to make and write a how-to covering them. Even more lamely, I told her she would just have to “hack away” and visit the Codex and wordpress.stackexchange.com when she encountered a problem. We briefly talked about child themes. Then she went away, disappointed.
As I thought about it, knowing I hadn’t been very helpful, I realized there was a basic mis-understanding about choosing a theme and designing around its structure and functionality. Someone had told her to design her theme in Photoshop, then select a good theme and hack it. Either they had not told her, or she had not understood, that theme selection is step one, then design should be based on that theme: utilizing its basic structure and incorporating whatever functionality it has that is useful for the particular site. I’m betting on the former: those of us with some experience are notoriously bad about skipping important bits of information when advising people with less experience.
Here is the list I sent her, suggesting she back up and start over:
- Use the child theme approach, leaving the original theme and its functionality intact. Some themes get updated, fixing bugs or adding functionality. Using a child theme allows you to take advantage of theme updates while maintaining your look-and-feel. http://codex.wordpress.org/Child_Themes
- Find a theme that is as close as possible, structurally, to what you want to end up with, and work within its structure as much as possible. Ideally, all you want to change is the appearance. This is like finding a house plan that suits you, then customizing it with floor coverings, wall coverings, paint, decor, and landscaping. Contrast the ease of that approach with starting with a 3/3/2 plan of a 1500-sq-ft single-story ranch, then changing it into a 2/2/2 plan of a 1800-sq-ft two-story Tudor; you probably should have started with a different plan.
- Once you’ve settled on a theme, create a Photoshop design template based on screen shots you’ve made of the theme demo (some themes provide a design template). Add guidelines that define the header width, content width, sidebar width, etc.
- Now you’re ready to design your theme.
- Try to change only things that can be changed using CSS: backgrounds, typography, color, position, etc.* This approach lends itself to using a child theme.
- Make a copy of the theme style sheet, make the changes at the top as described in Codex (above), and place it in a folder with a clever name, such as “mychildtheme.” Or even more clever, if you like. Upload the folder to your themes folder and activate the child theme. Hack away at the child theme CSS to implement your design changes (you may need to add an images folder to the child theme for background images). This is fun! Or at least, more fun than changing the ranch into a tudor.
*You can change column widths and position (structure) with CSS, but there are rarely only one or two places where those changes will need to be made. Can. Worms. You get the picture.
WordCamp Albuquerque: beyond expectations by any measure (and some code)
Author: Ray Gulick; Published: Sep 19, 2011; Category: WordPress; Tags: Code, WordCamp; No Comments
I spent an amazing weekend with a bunch (more than 212) of WordPress folks in Albuquerque this past weekend. Which means that for the first time in a while, I didn’t spend the weekend catching up on what I should have been able to accomplish during the week. So I’m catching up today (mostly), but wanted to take time to share personal highlights:
- Getting to work with great folks from ABQ and Santa Fe, including organizers/iron women Karen Arnold and Jenifer de la Garza (and their ever-helpful husbands Al and Rudy, respectively); fellow presenters Aryon Hoselton, Damian Taggart, and Sean Wells; and volunteers Guy Olds, James Tucker, Mildred Griffee, and others I am no doubt overlooking (with apologies).
- Meeting Lance Willett (Tucson), Joseph Scott (Salt Lake City), and Kevin Conboy (Denver), all from Automattic. Great guys who contributed a great deal to the quality of the event.
- Meeting various attendees. Some who gave me their cards or have contacted me since WordCamp via email or a social media channel: Cara Christenson, Bill and Merry Stubblefield, Mark Carrara, and others.
- Giving my presentation to an appreciative and generous audience who participated and asked questions. Interrupted briefly by attractive redhead taking my picture (later tweeting about my resemblance to Eddie Izzard. Not researching Mr. Izzard: might not be a compliment).
- Getting to help some people in WordDoctor session, an event in which various designer/developers donned lab coats and sat at individual tables, with people bringing specific issues they were having with their WordPress blogs/websites.
- Participating in designer/developer forum Sunday with Aryon Hoselton, Kevin Conboy, and Joseph Scott. Again, generous and participating audience who made the session with their questions.
The entire event was characterized by generosity, from sponsors to presenters to volunteers to attendees. Truly beyond our expectations.
And to top things off, during a slow period in the WordDoctor session, Damian Taggart of Mindshare Studios (and his sidekick, whose name I cannot recall) resolved an issue I was having with a query on a client website. This is a query for showing current exhibitions (custom post type) for the Museum of Contemporary Native Art, part of IAIA. Custom field values for exhibition start and end dates are compared against today’s date. Any exhibition with the start date less than or equal to today and an end date greater than or equal to today will appear on the listing page. I guess I’m becoming a geek; only a geek could work a code snippet into a thank you post. For any designer/developers who might be reading:
<?php
$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
$today = date('Y-m-d', strtotime('-6 hours'));
$currentexhibits = new WP_Query(array(
'post_type' => 'exhibitions',
'posts_per_page' => 6,
'paged' => $paged,
'orderby' => 'title',
'order' => 'ASC',
'meta_query'=>array(
'relation'=>'AND',
array(
'key' => 'exstart-date',
'value' => $today,
'compare' => '<=',
'type' => 'CHAR'
),
array(
'key' => 'exend-date',
'value' => $today,
'compare' => '>=',
'type' => 'CHAR'
)
)
));
if ($currentexhibits->have_posts()) :
while ($currentexhibits->have_posts()) : $currentexhibits-> the_post();
?>
WordCamp ABQ presentation: Build a powerful CMS with custom fields and custom post types
Author: Ray Gulick; Published: Sep 17, 2011; Category: Content Management System, Design/Development; Tags: Custom Fields, Custom Post Types, WordPress as CMS; No Comments
Slides from my presentation at WordCamp Albuquerque, Sep. 17, 2011. Also includes info about modifying Tiny MCE editor to make it more useful (and less dangerous).
The PDF is downloadable on Slideshare (link above slides and in the lower left of the control bar.)
What makes a good CMS?
Author: Ray Gulick; Published: Aug 16, 2011; Category: Content Management System; Tags: Custom Fields, Custom Post Types, WordPress as CMS; One Comment
In preparation for an upcoming presentation for WordCamp Albuquerque, I’ve been doing some thinking about what makes a good content management system. I was involved with providing content management systems for 6-7 years before I started using WordPress, so my perspective is not limited to my WordPress experience. I started using WordPress with some pretty high expectations about what a CMS should do, and I’ve been impressed with its ability to meet or surpass those expectations as I’ve learned more about how to configure it as a CMS.
This is not a feature comparison with other CMS platforms. Instead, I’m thinking about what the basic requirements for a CMS are, and what it takes for a CMS to be a good one. And there are only two kinds of CMS’s, from an end-user perspective: “good” or “bad.” Thinking about that inevitably leads to thinking about what kind of people use CMS’s (the “end users”), so I’ll start with them.
The people who update the company website don’t care what flavor the CMS is.
Typically, CMS users don’t maintain the website because they love websites. They maintain the website because it’s part of their job. For the most part, they want to make an update quickly and easily, and then go on to more important things. They don’t care if the CMS is WordPress, Joomla, Drupal or some other flavor, as long as it makes their work easier and quicker, and doesn’t get in their way. This may seem obvious, but I know from experience that a lot of developers don’t give this any thought.
Ease-of-use is not negotiable.
Complicated, confusing user interfaces are productivity killers. They can be a mere annoyance or an actual obstruction to keeping the website updated. When updating the website is difficult, the normal and usual end result is that the website does not get updated. And at that point, its value as a business and communication tool is non-existent. WordPress is famous for its ease-of-use and friendly user interface, consistently ranking ahead of other platforms in this regard. And it can be made more so, with a little bit of intelligent use of custom post types and custom fields.
The need for HTML coding must be minimized or eliminated.
This is actually an ease-of-use issue for most end users, but I think it deserves special mention. Straight out of the box, WordPress flunks this test. If all editing and formatting must be done in the WordPress editor, a good working knowledge of HTML (and possibly some CSS) is mandatory. But in the hands of a good developer, WordPress can excel in making HTML coding either optional or completely unnecessary.
Flexibility is critical.
Although there are some things most businesses and organizations need in a website, many of them also have some unique needs. A good CMS must be able to accommodate these needs without extensive and expensive development, while maintaining ease-of-use for the end user. With custom fields, custom post types, and custom taxonomies, WordPress is one of the most flexible platforms around.
The CMS platform must be well-supported.
Business users will not gamble on a system with an uncertain future or inadequate technical support, and why should they? In most cases, of course, the level of support an end user gets is dependent on the developer who implemented their website. But that developer can draw on the WordPress community when necessary. WordPress is the most widely used open-source CMS platform in the world by a very wide (and accelerating) margin. It has a large, committed developer base, in addition to the core development team. If there is a better bet than WordPress in terms of longevity, I’ve not heard of it.
Getting assistance as a developer from the WordPress community is practically standard procedure. Much of what I’ve learned about WordPress comes from WordPress’ excellent online documentation, and from other developers (most of whom I’ve never met in person) who are willing to offer assistance or advice.
In addition, should the original developer fall short in website support, finding a good WordPress developer is relatively easy: they’re not rare. Owners of WordPress-based websites do not need to fear that they’ll have to redo their website on yet another platform if they wish to work with a new developer.
Did I mention ease-of-use?
I just thought it was worth mentioning one more time








