Wireframing is awesome!

Using Mockingbird, a recently launched Cappuccino-based wireframing tool, I was able to whip up some quick UI concepts I’ve been thinking of for the next iteration of Edit Flow. Though obviously not as fast as a hand-drawn sketch, it’s far more convenient when you’re working with other people since you don’t have to get cameras and/or scanners involved.

Mockingbird has a fairly intuitive interface, and most functionality you’d expect from a wireframing/diagramming tool. Best part: no Flash! Check out the result below. It’ll be updated as I make changes to the diagram.

Read the rest of this entry »

This is the outcome of a couple of hours of Friday night coding after an open call by Chris Coyier over at Digging into WordPress. Here’s what Chris asked for:

Ever look through your list of plugins and forget just exactly what one of them does? I know they have descriptions next to them, but that doesn’t always speak to exactly what you are using it for and why. This plugin would just put a text field in each plugin field you could type some notes in there, theoretically to keep information about why and how you are using this plugin.

And since I was bored (and thought this was a pretty useful idea), I delivered. Plugin Notes is exactly what it sounds like.

Once you install and activate, the plugin adds a link “Add plugin note” that lets you add in a little note next to each plugin. It’s totally ajaxified and full of cool goodness. (Unfortunately, I was a bad programmer and didn’t make plugin gracefully degrade when javascript is turned off. Sorry, folks. Maybe next time.)

Plugin Notes: adding a note is easier than milking a cow.

Plugin Notes: adding a note is easier than milking a cow.

When a note is added, it shows up inside a little blue box and includes the name of the user that added the note as well as the date and time when the note was added. You also get handy dandy options to “Edit” or “Delete” notes.

WordPress plugin: Plugin Notes - blue boxes make things look pretty.

WordPress plugin: Plugin Notes - blue boxes make things look pretty.

Each plugin can only have one note. I can imagine there would be cases where multiple notes may come in handy, but those would be rare so I’m passing on that functionality.

The plugin is pretty simplistic, and unlikely to see any future feature additions (unless someone really, really wants one). I’ll keep a watch for compatibility with future versions of WordPress though, so rest easy.

Excited, enough? Grab Plugin Notes (from the WordPress Plugin Directory) or download it from within WordPress.

Note: you’ll need PHP5 and a javascript-enabled browser for the plugin to work.

Words of wisdom from A. Alan Borovoy at my graduation ceremony (University of Waterloo) on Saturday 24, 2009 (paraphrased-ish):

We shouldn’t be trying to make heaven on earth. Instead, we should try to reduce the amount of hell on earth.

Deep.

What the image says…

I'm attending ProductCamp Toronto, Oct 4, 2009

This is a comment I posted in response to a post by Andrew Robinson on Facebook traffic to student publications’ websites . Figured I’d throw it on here for more eyes to see since it’s pretty relevant info.

—-

I’ve seen the same thing working with http://theboar.ca. About 40% of our visits are Facebook referrals, and a lot of those are simply from contributors posting their own works. For us, Facebook is even more essential considering we’re online only. The great thing about Facebook and college publications is that you have a very healthy, active community on there,

Two things I’d recommend:

- If you have regular staff contributors/writers, tell them to set up their Facebook account to automatically pull their stories into their account as notes. WordPress has dedicated feeds for authors that they can add to their accounts. See this Support Forum post for details: http://en.forums.wordpress.com/topic/author-specific-rss-feed

- Avoid catchall “Share” widgets (in your case, you have the “Share and enjoy”). They’re often cluttered and people ignore them. Instead, I’d suggest targetting a few key networks (No more than 3 — Facebook and Twitter would be the main ones, and the rest based on what your userbase is using). I recently swapped out our “Share This” button with dedicated share buttons for Facebook, Twitter, and Email, and their usage has significantly increased. You can see an example of our share toolbar here: http://theboar.ca/2009/08/heather-hughes/

Also, should point out, Facebook has some good tips on how to optimize your pages for sharing. Definitely take a look: http://www.facebook.com/share_partners.php

A couple of fun promotional pieces I made for CupcakeCamp KW. Enjoy. (Oh, and if you’re from the Kitchener-Waterloo region, or nearby — yes, that includes you Toronto — there’s no reason for you NOT to be there at CupcakeCamp KW, which is happening September 19. Sign up, okay? It’ll be delicious, I promise!)

A Banner full of face-stuffing goodness

A Banner full of face-stuffing goodness

A poster full of cupcake-counting goodness

A poster full of cupcake-counting goodness

This is an assignment done recently for class (ENGL 408C: The Rhetoric of Digital Design). The goal was to “Discuss the design of an online newspaper … Combine the terminology of newspaper design with the observations of social semiotics.” I chose theglobeandmail.com mostly because they recently did a redesign ‚Äî it got mixed reviews (exhibit A, exhibit B, exhibit C, Google the rest yourself!) and from an aesthetic standpoint, I’m not the biggest fan either ‚Äî which gave me quite a bit to talk about.

I’ll warn you that it’s not the best and/or most invigorating piece of analysis in the world; many of my points are either rushed and/or exaggerated and/or unnecessary. It’s not very thorough either; I only touch on various aspects of the site and ignores lots. Plus, it’s an analysis from a social semiotic standpoint which is not the most exciting thing in the world. Simply put, you should probably just pass on reading this. But, I figured I’d throw it on here anyway since some of the points I make are valid and/or interesting.

Read the rest of this entry »

Sharing Category Templates

Sharing Category Templates

Update (2009-12-21): So, the original technique that I had posted is a bit hacky and kinda gets annoying when you have lots of categories and category templates. There’s a better approach that can add to your functions.php file to make everything work magically, which was inspired by Justin Tadlock’s comment on a post by Elliot Jay Stocks. Code below:

Add to your theme’s functions.php file and edit as necessary. For example, to redirect to categories with IDs 1 & 5 to a template called gallery.php, change the if statement to:

if( is_category( array( 1, 5 ) ) )
    template = locate_template( array( 'gallery.php', 'category.php' ) );

Easy, no?


Note: the stuff below is old, crappy, “legacy” code. Still here for posterity…

WordPress has an amazing theming system. It’s not perfect, but if you know the right things you can bend it to your will and do a lot of cool things. One great thing about it is the template hierarchy; WordPress basically allows you to create custom templates for categories, tags, authors, etc.

For example, if I add category.php to my theme, all category pages will now be styled according the structure within the category.php file. Now, let’s say I have a category called “Photos” that I wanted to look a little different from the rest. (Let’s assume the category ID for “Photos” is 6). All I have to do is add category-6.php to my theme, modify it to whatever, and the “Photos” category page will switch to this new template. Cool? Definitely.

With a system like this, you could technically customize your site to the point where the every category, author, tag, etc. page has a unique look and feel. But, that’s quite a lot of work and in most cases unnecessary. There may be cases though, where you want a small subset of categories to have a unique look, and you want these pages to share this look. Unfortunately WordPress doesn’t allow different pages to share templates. (Intuitively, I would think that something like creating a file called category-6,7,8.php [or similar] would apply this template to categories 6, 7, and 8). You could technically set up separate files (category-6.php / category-7.php / category8.php) and just copy and paste the code across all of them, but that’s a maintenance nightmare. A single change will have to be copied over multiple times, and that’s just annoying.

There are a few ways around this. One of easy ways is to use Idealion’s Category Enhancements plugin. Alternatively, if you want a more theme-level solution, follow the steps below. This is something I discovered while building out the image gallery pages for The Boar (links of what I came up with are at the bottom).

1. In your theme folder, create the category files for the categories you want to apply the custom template to.

  • Let’s assume we want to apply it to the categories “Portrait Photography” (ID: 5) and “Nature Photography” (ID: 12).
  • In this case we’d create category-5.php and category-12.php

2. In the category template files (category-5.php & category-12.php), add the following:

<?php require_once('common_template.php'); ?>

3. Create a generic category template: common_template.php

4. Then in the common_template.php, add the following:

<?php get_header(); ?>
<?php echo 'Hello World!'; ?>
<!-- The rest of your custom template goes here -->
<?php get_footer(); ?>

5. Now, if you navigate to http://your-site.com/?cat=5 and http://your-site.com/?cat=12, you’ll notice that their look will mirror what you included in common_template.php

I should note that this approach isn’t limited to category templates; you can use this with author and tags templates as well. Technically, with this approach you could combine multiple categories and tags, as well (though if you do, be wary of category- and tag-specific functions and make use of conditional tags).

You can see an example of this in action at the links below:

Sample files you work from. Download them, rename the extension to .php and throw them into your template folder.

Thoughts, questions, suggestions? Leave a comment below or send me an email.

Note: this is cross-posted from a post that I wrote on the CoPress blog.

This past weekend, we released the beta version of Stage 1 (Custom Post Statuses) of the Edit Flow Project, a plugin aiming to improve the WordPress Admin Interface for a multi-user newsroom’s editorial workflow.

The main goal of this stage was to “improve posts statuses by allowing custom statuses.” WordPress, by default, only allows for two statuses for posts during the editing process: “Draft” and “Pending Review”. These statuses are not very descriptive nor do they make it easy to track a story as it moves through a newsroom’s often complex, multi-level workflow.

With the release of Stage 1 of Edit Flow, WordPress users can now assign custom statuses to posts, giving them more control over the state of their content.

Read the rest of this entry »

I released a new update for Co-Authors Plus today. The version number gets bumped to v1.2 and includes mostly fixes, the major one being compatibility with WordPress 2.8. Details about changes below. To upgrade, click the upgrade link in your WordPress Admin dashboard, under Plugins, or download the latest version here.

Any issues, leave a comment, or send me a message.

  • FIX: Added compatibility for WordPress 2.8
  • FIX: Added new template tags (getthecoauthormeta & thecoauthor_meta) to fix issues related to displaying author info on author archive pages. See Other Notes for details.
  • FIX: Plugin should now work for plugins not using the ‘wp_’ DB prefix
  • FIX: Coauthors should no longer be alphabetically reordered when the post is updated
  • FIX: Plugin now used WordPress native AJAX calls to tighten security
  • DOCS: Added details about the new template tags