Introducing Sueetie Taxonomies

I read a recent article on Smashing Magazine about creating custom taxonomies in WordPress and thought, "Ooooo, I want that!"  I also happened to be thinking about a new Wall on with news and tips on BlogEngine.NET, YetAnotherForum.NET, Gallery Server Pro and ScrewTurn Wiki (announcement soon) and knew that a beefy categorization feature was a must.  The result is the introduction of a Taxonomy architecture that can be used on a Sueetie Wall and in the future, elsewhere.

Sueetie Taxonomies consist of Taxonomy Groups and Taxonomy Terms within that group.  A Taxonomy Group currently supports a single application.  Taxonomy Groups have the data hooks to support applications by type (all Walls, for instance) and Global Taxonomies for all site content, which I hope to implement in the future.

Taxonomy Url Structure

Sueetie Taxonomies are SEO-friendly in two unique ways.

1) A Taxonomy Group Key in the url describes the taxonomy type, and
2) The Taxonomy Term description is user-configurable and can be of any length

As an example of an SEO-aware taxonomy url is below.  It is an actual url used on The Edge Wall at "Application" is the Taxonomy Group Key and describes the taxonomy type. "ScrewTurn-Wiki" is the Taxonomy Term’s "slug" which, of course, strengthens SEO.

Sueetie Taxonomies In Action

I’ll discuss how Sueetie Taxonomies are used with a Wall Application so you get a feel for them. On The Edge Wall I’m using an "Applications" Taxonomy to arrange the posts. Circled below are two aspects of Taxonomies where properties were added to the wall application to enhance its functionality.

Circled in red is a Taxonomy List View Control which lists all Taxonomy Terms for the Current Application’s Taxonomy Group. The Taxonomy Group List View Control can be placed anywhere on your site, not just within the application. You will also notice that each Taxonomy Term supports RSS subscriptions, since that was an important feature for the Edge.  And besides, "RSS Everywhere" is my motto.

Circled in blue is an enhanced Wall property that works with Taxonomies. Rather than display a user’s avatar as is normally displayed in those locations we’re displaying a Taxonomy-specific graphic to reinforce the type of post content.


The Taxonomy List View Control

The Taxonomy List View Control you saw on the sidebar above is structured exactly like any other Sueetie List View Control. It is dropped on to the page as shown below and the layout is easily modified in the view’s ASCX HTML template. You will notice we are retrieving the Taxonomy Terms for the Taxonomy Group denoted by the Group’s unique Key, or in this case "application" to denote one of the four rockin’ applications covered on the Edge Wall.


Assigning a Taxonomy Term to Content

If a Sueetie Wall is assigned a Taxonomy Group, the Taxonomy Assignment Icon is displayed with a pop-out form.


Assigning a Taxonomy Group to an Application

Application properties are added to enhance their functionality with Taxonomies. For Sueetie Walls, two properties were added on the Wall Management form: 1) HasTaxonomy and 2) UseTaxonomyAvatars.


Managing Taxonomies

As I mentioned, Sueetie Taxonomies consist of Taxonomy Groups and Terms within those groups. Here is the Taxonomy Management form in the Sueetie Addon Pack Administration area.


To add or update Taxonomy Terms, click on the "Manage" button where you will see the following form.


Future Plans for Sueetie Taxonomies

For the initial release of Taxonomies in Sueetie v4.0 we have in place an architecture that can be extended for use across the site. For purposes of expediting the release of v4.0, however, the functionality of Taxonomies has been limited to the Sueetie Wall Application. In v4.x (hopefully v4.1) we hope to see taxonomies expanded to support CMS content as well. I also plan to employ Taxonomies by Application Type and a Global Taxonomy that includes site content in all applications.

Article written by

A long time developer, I was an early adopter of Linux in the mid-90's for a few years until I entered corporate environments and worked with Microsoft technologies like ASP, then .NET. In 2008 I released Sueetie, an Online Community Platform built in .NET. In late 2012 I returned to my Linux roots and locked in on Java development. Much of my work is available on GitHub.