The latest version of ClassiPress was made available yesterday which is a maintenance release for v3.0.5. v3.0.5 was released last month and included a bunch of new features – many of which were scheduled to be in v3.1. In all, there were 158 tickets closed out.
We made the decision to break apart v3.1 into two different releases mainly so we could first take advantage of a important WordPress 3.0 feature.
- Custom Post Types and Taxonomies
This was the biggest change and required us to move the entire theme over to custom post types and taxonomies. It was a huge undertaking from a development standpoint and took the majority of our time to complete.
It made more sense for us and our customers to release this huge change in a pre 3.1 release instead of lumping everything into one gigantic release. This will essentially ease everyone into the new UI and feature-set.
What Are Custom Post Types Anyhow?
Before we talk about custom post types, let’s address what content types are. Basically they are different types of content that exist within WordPress and you may not know it, but you use them all the time. There are five major content types that WordPress uses by default. They are posts, pages, attachments, revisions, and nav menus.
Before WordPress 3.0, we were limited to using just those default post types. WordPress 3.0 now gives us the capability to add our own custom post types (and taxonomies) and to use them in different ways. For example, with ClassiPress v3.0.5, we started using custom post types for ad listings instead of stuffing them all into posts.
What About Custom Taxonomies?
A taxonomy is basically a way to group things together. WordPress has three built in taxonomies that you are already familiar with. They are, categories, tags, and link categories. Since WordPress 2.3 we’ve been able to create our own custom taxonomies but this feature was rarely used up until v3.0.
In ClassiPress v3.0.5 we started using two new custom taxonomies which are ad categories and ad tags. These are kept completely separate from your blog post categories and tags which makes it much easier to manage (and code).
There are many benefits of using custom post types and taxonomies which go beyond the scope of this article. For ClassiPress and the rest of our themes, the primary benefit is being able to separate and manage these content types and taxonomies so they aren’t mixed in with blog posts.
This is how WordPress should have been built from the beginning but it was initially developed as a blogging platform and not a content management system (CMS). It’s evolved like crazy over the past several years and theme development companies like ours, help to push the limits. This, in turn has helped open up new doors such as custom post types. Hats off to WordPress for enabling this.
What’s New in v3.0.5
Almost all features that were targeted in v3.1 have been released in v3.0.5. Here’s a list of highlights of what’s been included:
- Ad listings now use custom post types and taxonomies
- Check box and radio button custom field types
- jQuery tabs on admin option pages for better organization
- New users can create a password on account sign-up
- Tool tip icon added to custom fields on form
- Coupon code module
- Moved and enhanced search box under main nav
- Real-time auto-complete search suggestion
- Incorrect spelling auto-suggest engine on search results
- New admin email option page with new reg email template
- Ability to mark ads as “sold” and keep them live
- Large image preview on ad thumbnail hovering
- Added an AJAX real-time updating Twitter sidebar widget
- Added a Facebook like box sidebar widget
- Last 30 days income and new ads dashboard chart widget (Small Biz, Pro & Ult Editions)
- Enhanced user dashboard sidebar
- Ad images now allow editing of alt text field for SEO benefits
- Updated design to use modern rounded corners
- Rebuilt stats module so it’s included on all ads and user dashboard
- Option to use gravatar hovercards on ad author and comment photos
- Option to use Google CDN hosted jQuery
- Menu caching to speed up page load
- Added general.js to allow custom added javascript
- Cufon font replacement system
- Recaptcha anti-spam system for new sign-ups
- Changed ad, post, and page title tags from h2 to h1 for SEO benefits
- Added debugging option to print out WordPress queries
- Added pagination on the user dashboard for all ad listings
- Option to turn off WordPress version meta tag
- Full support for WordPress 3.1 (once it’s been released)
- Option to disable menu bar on front-end for logged in users (coming in WordPress 3.1)
- Added support for custom hierarchical taxonomy permalinks for ad categories (coming in WordPress 3.1)
For a complete list of new features, see the changelog.txt included in the theme download file. You can also see the changes on the demo site.
Read This Before Upgrading
As mentioned earlier, the biggest change is moving to custom post types and taxonomies.
It’s very important you understand how this affects your site & plugins before doing the upgrade.
Using custom post types and taxonomies is relatively new and many plugin developers have yet to upgrade their plugins to work with WordPress 3.0. You should check with each plugin to make sure it supports WordPress 3.0 otherwise it will no longer work correctly.
Permalink Structure Changes
Another important issue to mention is how this will change your permalink structure.
For example, ClassiPress v3.0.4 or earlier lists ads at the root. This actually depends on how you setup your permalink structure but this is how we recommended it:
- www.yoursite.com/your-ad-name/
Once you make the switch to custom post types, it uses a different permalink structure. Here’s what it will look like in 3.0.5.3:
- www.yoursite.com/ads/your-ad-name/
Now you have the ability to change the “ads” directory to a different name but it’s still not root-level. That’s just how custom post types work (and technically the correct way).
Sub-Category Hierarchy Structure
Another short-coming (which will be fixed in WordPress 3.1 due out early Jan 2011) is sub-category hierarchy for custom taxonomies. Right now all custom taxonomy categories are flat unlike ClassiPress v3.0.4 or earlier.
Here’s an example of a sub-sub-category structure in ClassiPress 3.0.4:
- www.yoursite.com/category/sub-category/sub-sub-category/your-ad-name/
Now with custom taxonomies in WordPress 3.0 and ClassiPress 3.0.5, here’s what it’ll look like:
- www.yoursite.com/ad-category/sub-sub-category/your-ad-name/
Again, this is a short-coming in WordPress 3.0 which will be fixed in WordPress 3.1. The good news is we’ve anticipated this problem and already baked in the fix so once WordPress 3.1 goes GA, it will just work.
Inbound Links
Something else worth mentioning has to do with inbound to your ads. This new url structure means any existing inbound links will be broken and not pass along their “link juice” for SEO benefits.
The best way to handle this is by setting up what’s called, 301 redirects. These are basically mappings that tell Google that your old urls should now point to your new ones. It also prevents visitors who click on your old links from getting a “404 page not found” error.
This can be done a number of ways but the easiest is by using a WordPress plugin. Some of the ones we recommend are Simple 301 Redirects and Redirection.
Upgrade to WordPress 3.1 RC
If you’re already using ClassiPress 3.0.5.3 and you want this functionality now, we recommend upgrading your WordPress to 3.1 RC. It’s currently available for download here and it’s pretty much the finished version. RC stands for “Release Candidate” which means it’s basically ready for release – pending any last minute fixes.
Final Note
Also, once you upgrade to v3.0.5.x there’s no going back. It’s not a bad thing nor is the upgrade risky, it’s just a warning. You’ll be prompted with an upgrade and migration message once you activate ClassiPress v3.0.5. We automatically take care of everything for you with our migration script.
What Does the Migration Script Do?
The changes technically are rather simple for moving posts over. Since all but one content types (i.e. posts, pages, attachments, revisions) are stored in the wp_posts table, we just have to change the post type from “post” to “ad_listing”.
Same goes for ad categories and ad tags. They are stored in the wp_term_taxonomy table so we just change the taxonomy column values from “category” to “ad_cat” and “post_tag” to “ad_tag”.
We’ve also built a new drop-down menu located on each post where you can manually change the post type.
How Do I Get the Latest Version?
Existing customers can login to their account and download either the patch or full upgrade from their dashboard. Not yet a customer and want to purchase this theme? Visit our ClassiPress product page to read all about the unique features included with this theme.
What Files Have Changed?
Many of our customers have done customizations to ClassiPress and want to know exactly which files have been added, modified, and removed. The change from v3.0.4 to v3.0.5 is so massive since it affects the entire infrastructure that pretty much every file has been altered. In this case it’s best to start from v3.0.5.3 and bring over any changes you have made.
The good news is we’ve made this process going forward much easier. In addition to providing the latest full version download, we’ll also be including a patch release. This will be a much smaller download and only include the files that have changed since the previous release.
So instead of having to read through the change log and figure out what files have been modified, you can just download the patch and ftp the files directly into your existing ClassiPress theme folder. You’ll still want to deactivate and then reactivate your theme so everything gets updated correctly but this will improve your upgrading experience.
In fact we’ve included a patch for v3.0.5.3 so if you’re already running v3.0.5.2 then just download the patch instead of the full version. That’s one of the benefits of using svn as our theme version control system. It’s easy to create a diff and export all the files modified.
Here’s the list of all files affected in the 3.0.5.3 release (from v3.0.5.2).
includes/admin/admin-style.css Modified
changelog.txt Modified
style.css Modified
tpl-edit-item.php Modified
includes/appthemes-functions.php Modified
includes/theme-stats.php Modified
includes/forms/step3.php Modified
includes/forms/step-functions.php Modified
includes/forms/login/login-form.php Modified
includes/sidebar-blog-posts.php Modified
includes/admin/admin-notices.php Modified
includes/admin/admin-updates.php Modified
includes/admin/admin-enqueue.php Modified
includes/admin/admin-post-types.php Modified
includes/admin/admin-options.php Modified
includes/admin/admin-scripts.js Modified
includes/admin/admin-values.php Modified
tpl-dashboard.php Modified
includes/admin/install-script.php Modified
includes/theme-widgets.php Modified
includes/theme-enqueue.php Modified
includes/theme-security.php Modified
includes/theme-functions.php Modified
footer.php Modified
includes/js/theme-scripts.js Modified
includes/theme-header.php Modified
classipress.po Modified
classipress-no-admin.po Modified
loop-ad.php Modified
classipress.pot Modified
classipress-no-admin.pot Modified
index.php Modified
tpl-add-new.php Modified
includes/js/jquery.flot.min.js Added
images/pe-chart-teaser.png Added
So there you have it. Hope you enjoy all the new features and if you have any problems with the upgrade, please post your questions in our support forum. Our dedicated support team will be happy to help!