On Quality Control

A much needed update for Quality Control:

For the past month or so I’ve been negotiating a deal with AppThemes, a Premium WordPress Theme Marketplace, to transfer development of the Quality Control theme. Because of this, I will no longer be offering support, and the publicly available versions have been taken down.

AppThemes plans on expanding on the functionality, and providing the theme with much of the functionality I was not able to implement due to it just being a side project. They expect to re-release it in April.

On another note, I should have a new design for the site coming soon… maybe…

On another note, I’m now looking for other WordPress themes I can make. Gimme some unique ideas!

Quality Control 0.2

Wow. Just when I thought it couldn’t get any cooler. (Not to toot my own horn).

The next version of Quality Control (currently awaiting review) takes things to the next level. In reality there are very few new “features” for the average user. However, things have been cleaned up, and made ridiculously easy to use.

I’ve set it up now so each “module” of Quality Control is loaded through add_theme_support. This way, child themes can effortlessly remove built in features like milestones, categories, tags, assignment, and notifications. Not only is it easy to remove features, but it’s almost just as easy to add them. A new class has been introduced that handles creating new taxonomies automatically. It will automatically add it to the navigation, ticket meta, admin backend, ticket listing columns, save the information when publishing tickets, and add the fields to the form. It’s awesome. Here is how it is used:

In functions.php of your child theme add:

add_action( 'after_setup_theme', 'quality_child_test', 11 );

function quality_child_test() {
	add_theme_support( 'ticket-priority' );
	require_if_theme_supports( 'ticket-priority', locate_core_file( 'inc/modules/priorities.php' ) );
}

Then create a file in /inc/moddules/ called priorities.php (this is in the child theme directory)

<?php
/**
 * @package Quality_Control
 * @subpackage Ticket Taxonomies
 * @since Quality Control 0.2
 */

if ( ! class_exists( 'quality_ticket_priority' ) ) :
/**
 * Create the status taxonomy. Nothing custom here.
 *
 * @since Quality Control 0.2
 */
class quality_ticket_priority extends quality_create_taxonomy
{
	/**
	 * Just create the name, slug, and labels. The rest is
	 * done automagically.
	 *
	 * @since Quality Control 0.2
	 */
	function quality_ticket_priority() {
		parent::quality_create_taxonomy(
			'ticket_priority',
			'priority',
			array(
				'name' => __( 'Priorities', 'quality' ),
				'singular_name' => __( 'Priority', 'quality' ),
				'search_items' => __( 'Search Priorities', 'quality' ),
				'popular_items' => __( 'Popular Priorities', 'quality' ),
				'all_items' => __( 'All Priorities', 'quality' ),
				'update_item' => __( 'Update Priority', 'quality' ),
				'add_new_item' => __( 'Add New Priority', 'quality' ),
				'new_item_name' => __( 'New Priority Name', 'quality' ),
				'edit_item' => __( 'Edit Priority', 'quality' )
			)
		);

		$this->actions();
	}
}
endif;

$ticket_priority = new quality_ticket_priority;

This will automatically add a new taxonomy called “Priority”. Amazing.

Quality Control 0.1.5

Quality Control 0.1.5 brings a few changes to the table. From the changelog (which isn’t really that specific)

  1. Created a ticket form template tag.
  2. Added the ability to assign users to tickets.
  3. Added permission options to setings.
  4. Other optimizations/code fixes.
  5. State permalinks aren’t hard coded in loop.php and single.php

The one I am most happy about is merging all the front-end ticket submission form code into one function. I’ve set this up in an almost identical manner as the comment_form function found in WordPress. You can filter the array of inputs, making it much easier (and possible) for Child Themes to exclude certain fields without having to edit the theme directly.

A basic permission system has also been put in place. It allows you to assign one or more users to a specific ticket. Then you are able to decide how those tickets act/appear to users who are not assigned (hide the ticket, read only, or readable and writable.)

Along with multiple other bug fixes/optimizations, I fixed some hard-coded permalinks that where causing some trouble.

With each iteration, the customizability through Child Themes improves. Hopefully it will eventually get to a point where no theme files ever need to be edited. But that might be an unrealistic goal.

Get Quality Control

On Premium Themes

Custom theme options aren’t enough any more. It’s time to start finding more innovative ways of using WordPress, and executing it correctly and efficiently.

Maybe it’s just me, but I’m not dazzled by the ability to edit fonts from the backend, or change the logo. It’s easy enough for any free theme to do that. Create something truly unique out of WordPress and then call it “Premium.”

I realize this isn’t ideal for people who are trying to make a sustainable business out of selling themes, as they have to appeal to the masses. But I don’t know how much more mediocrity the “Premium” theme market can handle. If what was once considered “Premium” is now expected, then it is no longer premium. New things need to be introduced.

Quality Control 0.1 Soft Release

View the official page for the latest updates.

Over the past few weeks, I’ve been working on a little side project in my spare time. It’s a WordPress theme (go figure), but with a twist. It uses WordPress in a completely different way.

While developing WPBundle, I needed a way to keep track of tickets/bugs I found or created while developing. For a while, I was using Lighthouse which worked great. However, I have a thing about owning my content, so I set off to create my own solution. Initially I was going to create a custom PHP solution, but as I was creating it, I realized that WordPress provided me with everything I needed to make it work.

From the site:

This WordPress theme was designed to allow the creation, and tracking, of tickets. It was kept simple, and packaged lightly, allowing the user to use it however he/she wants. Just the essentials have been added, and the rest is up to you.

The idea is to provide a base “framework” of sorts, that creates the core functionality needed for ticket tracking, but leaves room for the user to take it in any direction they want.

I’m sure there are many bugs, but that’s why I’m doing a soft release here first. I’ll update any bugs that are reported (email me at [spencerfinnell (at) gmail (dot) com]) then upload it to the WordPress.org Theme Directory.

Download: Quality Control 0.1

62kb — Last Update: August 25, 2010

Demo: Launch Demo

Send me a note on Twitter if you find a bug, or like the theme.

Remember, there is no sort of protection or anything with this. It just uses the built in permissions WordPress provides. So I’d suggest setting it up in a private/protected directory (unless you want people to see your tickets).

WordPress Feud (Again)

Another WordPress storm is brewing. This time it’s over the Thesis WordPress theme, which has sparked another debate over the GPL license. Matt has been trying to convert Thesis to GPL for a few years, he says; but they won’t budge. Basically they are in direct violation of the GPL, but won’t change because they think it will hurt their business model.

Apparently they don’t think their support is good enough to keep people from leaving to other themes. Because really, that is what you pay for in ‘premium’ themes. For WPBundle, our code will be freely available from the get-go. Do whatever you want with the actual HTML/PHP, you’ll have access to it. You’ll still have to pay us for the theme images, CSS, and access to support from the people who built the theme. But if WordPress says that Themes are GPL too, then they will be!

It’s pretty simple if you ask me. Just abide by the license. If you disagree with the license of the software, then you shouldn’t be developing for it.