For the impatient, grab the update here: http://getk2.googlecode.com/files/K2_v2.6.5.zip
If you are on Joomla! 1.5, grab the zip file from the link above and install it on top of your existing K2 version. If you are on Joomla! 2.5 or 3.0, go to the Joomla! update manager, purge the update cache, re-check and you'll see the new release available to instantly update. If you are on Joomla! 1.6 or 1.7 then someone probably cut off your internet connection a year ago: upgrade to 2.5 now!
So what's changed or been updated in this new release in more detail?
First off, we fixed 2 bugs in the new advanced SEF options. The first bug was that old URLs were not properly displaying K2 content. So if you clicked on my blog page here in this site from some bookmark or from a Google search (a URL like domain.com/show/itemlist/user/1-name) you would be greeted with a 404 error. The 2nd bug was in the search option enabled via the K2 Tools module, which was simply not working at all and again redirected to a 404 page. All these errors have been fixed and now both old and new URLs point correctly. However old URLs will not redirect to the new URLs, just fetch the right content. And as I wrote earlier, this did not affect sites that didn't use these new SEF options.
In the blog post for K2 v2.6.4 I also described a way to avoid duplicate URL creation for users, tags, search and date listings. In K2 v2.6.5 we've made this process even simpler. All you need to do is simply create a new menu in Joomla! (call it "Hidden" as it won't be directly called from any module) and in there create a K2 menu item pointing to all categories. Give this menu item a nice alias, e.g. "show" (as we also do here on getk2.org). If you do this, K2 is now able to "assign" this menu item as "root" for all such "menu orphan" K2 content such as tags, users, search and date listings. We call this content "menu orphan" because they are K2 pages created from links present on K2 categories and items (the backbone of K2 content) and don't necessarily have to exist under some Joomla! menu. Of course you can create direct menu links to select users or tags, but it's simply impossible to do that for all tags and users in a site. So by using this "trick", even if you don't have any other menu item pointing to K2 content in your site, you can rest assured all K2 content URLs will begin with this menu alias you've set.
The result is short and more descriptive URLs. Just check the new URLs on getk2.org. From getk2.org/blog/item/1-titlealias to getk2.org/blog/1-titlealias. From getk2.org/blog/itemlist/tag/sometag & getk2.org/documentation/videos/itemlist/tag/sometag to just getk2.org/show/tag/sometag (no more duplicate URLs too for tags, users, search & date listings).
We have also added more options in the K2 advanced SEF options. You can now control whether you want the item or category ID to display or not. If you can properly map your K2 category structure under Joomla's menus, then you could make use of URLs in the form of: domain.com/news/world/groundhog-day (this example would require a K2 category menu to "news" only and advanced SEF options set with no ID usage for both categories and items). And don't worry, we've added a mechanism in K2 that now checks for duplicate "title alias" in item and category forms. Of course this only happens for any content you add after you've enabled the advanced SEF and the ID removal options as well. If one of your K2 content editors adds an item that happens to have the same "title alias" with an older item, then K2 will save the item but append "-2" to the "title alias" your editor entered and also show a message to the editor (in case they want to revise the "title alias").
So all in all a win-win solution for everybody, completely "out of the box".
You can see a snapshot of the "Advanced SEF Settings" that we use here on getk2.org on the image in the right.
In K2 v2.6.5 we have also fixed a bug with the new "Tag Normalization" options added in v2.6.4. It seems the built in Joomla! functions we used for processing the tags failed to work properly, so we just swapped them with native PHP functions that work as expected. This bug caused valid tags to be stripped from duplicate characters. So the work "normalization" would become "normalizt" with the extra "i", "o" and "n" being stripped. That's fixed now and the entire process will work as expected. Remember that the goal of this new option is to "enforce" less duplicate tags. Previously the tags "Hello" and "hello" would be stored as 2 separate tags in K2. If you enable "tag normalization" in K2 v2.6.5, these 2 tags would be stored as one: just "hello" (or just "HELLO" if you chose to enforce uppercase characters in the related settings).
Aside the bug fixes already mentioned, we have also re-worked on the Google Search option built into K2. For that matter, the template override "generic.php" which is used to display results for search and date listings has been updated. If you don't use Google Search, then you don't really need to update your template overrides. If you do, you must update them as Google Search won't operate at all. For new K2 installations that wish to use Google Search we have also slightly updated the CSS to better fit the layout of the Google Search results in K2.
As we are already working on the new major version of K2 (version 3), we will not be adding more features to K2 v2.x. We will only focus on potential bug fixes, social widget code updates and performance improvements. In K2 v2.6.6 we want to work on completely removing MooTools dependence from K2 (that's a performance improvement). So if you wish to "strip" MooTools entirely from your Joomla! site, K2 will work just fine (k2.js is already based on jQuery, but we still use Joomla's modal option which enforces MooTools in versions 1.5 and 2.5).
The plan is to maintain K2 v2.x for at least 2-3 more years after K2 v3.x is released and that's to cover all the Joomla! 1.5 websites using K2 (which are a lot!).
For a full list of changes, grab a coffee and check out the list from our SVN server: http://code.google.com/p/getk2/source/list
If you notice a bug, please take a moment to report it here: http://code.google.com/p/getk2/issues/list - we check this list more than email :)
We have also updated the K2 template overrides page to reflect the changes in "generic.php" and "k2.css". The template override changes are minimal, so it's just a 2 minute process to update your current overrides.