WordPress review

September 1st, 2005 | Filed under WordPress

Having built this site in one day using free web publishing tool WordPress for the first time on a production weblog, I must say I’m impressed.

I’ve spent the last 6 months publishing 12 posts a day under a tight schedule on Lifehacker using SixApart’s MovableType, Gawker Media’s CMS of choice. Otherwise I’ve only used my own publishing system. Given my experience, a few of WordPress’ features really knocked my socks off. On the other hand, there were things I reasonably expected WP to do out of the box which it didn’t. Also, in many ways I can see that WP is inaccessible to the non-technical user.

Here are some off-the-cuff thoughts about WordPress, in some cases as compared to MT.

The Good:

  • Easy theme installation and modification
  • Easy plugin installation; Not sure if adding files to a directory counts as “installation,” though
  • “Edit this” links on posts when I’m logged in
  • Custom post fields
  • Toggle markup buttons on post edit (ie, toggle from open UL to close UL)
  • Page creation
  • Post passwords
  • Parent categories and heirarchichal category display
  • “Next page” link (MT doesn’t have this)

The Bad:

  • No easy way to add images to a post out of the box. I installed the IImage Browser plugin but it’s still way clunky. Images are good! It should be easy to include them in a post. MT’s image handling, while better than WP’s, could still improve. Update: I totally missed the Upload tab in the Admin interface. What’s it doing all the way over there?
  • WP needs a MUCH, much easier way to add categories, like, without navigating away from the post edit page. This site is heavy on categories and it’s so frustrating adding new ones. Tag-style entry would be good, with the addition of parents.
  • No in-design preview. MT doesn’t do this either…. I’d love to see what my post will look like WITHIN my site’s design so I know I haven’t messed up things with a stray div.
  • No way to turn off the automatic insertion of <p>’s into posts. Or did I miss that?

The Ugly:

  • Embedding PHP directly into the site templates. I’m sure many would disagree, but how about a templating system with it’s own markup (like Smarty) that takes away the “comfort with PHP” requirement for modifying WP views?
  • The admin interface is not as user-friendly as it could or should be. I had to consult the documentation for trivial tasks that should’ve been obvious in the interface. The documentation might be scary to Joe User (wiki’s and help forums usually are). How about a few “what’s this?” links, or collapsible hint text beneath fields, ie, “Here’s how to make a file writeable,” “Here’s how to include an image with your post,” “Add a new category here,” “Here’s how to set up ‘READ MORE’ links.”)
    Overall, WP suffers from the usual open source flaw: it feels designed by programmers for programmers.

This all said, building a web content management system is not trivial. I know, I’ve done it and Scribblish hasn’t made it to release yet. Overall, WordPress is a solid, promising product that is mature in some ways but has lots of room to improve in others. Overall, Matt and the team have alot to be proud of as well as a lot of work to do. One of these days I might just join in.

WordPress

Update, 4 days later: I’ve done what feels like an large amount of WordPress default installation modification to get Spun where I want it. A list, which will probably be useless to everyone but me.

Spun WordPress mods

  • Installed the HashCash anti-comment spam plugin
  • Installed the IImageBrowser image-managing plugin (before I noticed the “Upload” section of the admin, duh)
  • I wanted hackable URLs, like /posts/%yyyy%/%mm%/%dd%/%post-slug% and /topics/%cat%/%subcat%/. WP handled that on its own and gave me .htaccess code, beautiful.
    But while cutting off bits of the dates and subcats worked, I still didn’t have totally hackable URLs up to the highest directories (posts and topics). So I created an archive page using this tutorial, which recommends naming your archive page something other than what’s in your permalink path. I ignored this advice which would defeat the purpose of hackable URLs. This meant I had to hand-edit my .htaccess file to get that archive page to show up at /posts/ and /topics/.
    Note about this: setting _wp_page_template to a value didn’t work for my archives page. The field simply didn’t hold the value of the key. So I’m just using the page template to display archives, with PHP embedded in it. Ugly, but I have no plans of using pages for any other reason. I fear I might regret this decision later.
  • Added Google AdSense Javascript into advertisement templates and php_require into my site templates to include the ads
  • Added robots meta tags as mentioned here
  • Added a favicon.ico as mentioned here
  • Did countless cosmetic and copy modifications to Patricia Muller’s beautiful Connections theme.
  • Changed the post display to “if a post excerpt exists, display it, otherwise show the whole post” using
    <?php ($post->post_excerpt) ? the_excerpt() : the_content(); ?>

    Strike that, just found out about the <!--more--> trick, which is a little crazy. (See bit about WP being a bit much for regular people.)
    Now this is the template PHP code I’m using:
    < ?php the_content('(continue reading '. get_the_title().')'); ?>