The process to update K2 is fairly simple. 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.x, 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 still on Joomla 1.6 or 1.7, send as snail-mail to let us know cause you clearly love retro - or do yourself a favour and upgrade to Joomla 2.5 and then to Joomla 3.x.
So what's been added, changed or updated in this new release in more detail?
Here's a list of the important things added, changed or updated in K2 v2.7.1.BACKEND
- Added batch operations for Categories (as introduced for Items in v2.7.0)
- Fixed backend language filter in Categories
- Fixed item image upload issues in PHP 7
- Fixed batch language switching to "All" from a single language in Items
- Fixed missing extra fields when creating a new item (#306)
- Fixed newly created attachment not storing the value in the correct HTML element (after 2.7.0)
- Updated NicEdit
- K2 will now replace white space with an underscore in image filenames when uploading image galleries, to prevent backend image previewing issues
- Fixed "Browse Server" button modal not working in the category edit form
- Fixed hidden media preview introduced since v2.7.0
- Various user interface (UI) fixes and improvements (and in all viewports)
FRONTEND
- Sub- and Child-Category ordering issue (#278) related to a bug in backend UI ordering controls
- Social media buttons will now adapt to the language of your site (if it's supported from Facebook, Twitter or Google+)
- Added option in the K2 Tools module's "Search Box" options for setting a menu item id (comes handy when you want to enforce a redirect page after using the K2 search box, so you cab style the results better)
- Added option (in the component settings) to control the display of K2 User Profiles for users with no items. This setting will prevent spammers from abusing their auto-generated K2 User Profile page (after a simple signup) in order to post spam links.
- Fixed redirection issue in the user registration form when reCAPTCHA v2 is enabled
- Fixed "related items by tag" image display alternate text missing
- Updated the attachments download function to prevent PHP memory limit related errors when trying to download large files - download initiation is also faster now
- Fixed login/logout redirection issue in mod_k2_user
- Fixed duplicate item pulling when retrieving content from multiple tags in the K2 Content module
- Fixed timestamp missing from OpenGraph image meta tags, when the timestamp option (in K2 settings) is on for K2 item images
- Category ID hiding in the URL (when using K2's Advanced SEF options) has been restored
SECURITY
- Fixed: Low priority XSS vulnerability in the K2 backend - relates to inadequate filtering of the search option in backend listings. Upgrade to version 2.7.1 to resolve.
GENERAL
- Improved compatibility with PHP 7.x
- Latest Joomla 3.6.x compatible
- Still 100% compatible with Joomla 1.5 and 2.5
- Removed PHP Pear's Services_JSON class and replaced with native PHP functions
- Many, many other bug fixes and improvements under the hood
Upgrading
If you use v2.7.0 already, then it is (as always) safe to upgrade to K2 v2.7.1. If you use a version before 2.7.0, refer to the 2.7.0 upgrade notes. In v2.7.1 there is a minor HTML output change in the frontend (in the item.php override) with the addition of a language tag in social media buttons.If you already have your own K2 CSS and/or HTML template overrides then there's nothing to worry about. If you use "stock" K2 CSS and HTML template overrides, just browse your site after the upgrade to make sure nothing's misalligned. In any case, exceptions may occur but they are usually easy to resolve. If you need any help, just post about your issue in the K2 Community Forum.
Since the release of K2 v2.7.0 we have added an update notification for new releases of K2 within the K2 backend (viewed only by super admins) to make it easier to spot new releases and update accordingly.
Before upgrading, it's always a good idea to get a backup of your site (just in case):
- To upgrade in Joomla 1.5, just install v2.7.1 on top of any existing K2 installation.
- To upgrade in Joomla 2.5 or 3.x, either install on top (as with Joomla 1.5) or use Joomla's extension updater (you should already see the notification for v2.7.1).
CSS & HTML Template Overrides
As stated above, the only frontend change is the addition of a language tag in social media buttons, in the item.php override.Metrics, metrics, metrics...
The K2 Metrics initiative launched since v2.7.0 has been a real treasure for us, shaping the development of K2 for the future. To give you a quick example, we were using (for many years already) PHP Pear's Services_JSON class which was a PHP implementation of json_encode/decode functions, geared primarily for PHP versions before 5.2. This was something we had in to support Joomla 1.5 on PHP 5.2 and below (as Joomla 1.5 is compatible with even PHP 4.x according to the official Joomla requirements page). K2 metrics showed there are just 3 sites on PHP 5.1 and 0 on PHP 4.x while using K2 v2.7.0. So we removed that class and used native PHP functions instead. This is a trivial example but if you have a look ath the metrics page you'll easily see that the LAMP stack rules (MS tech is less than 1%), PHP 7 is (naturally) slow to adopt, Apache rules (but a 20% of that with accurate version reporting uses old Apache versions - 1.x or 2.2), Nginx is surprisingly third (behind Apache & LiteSpeed) so naturally you can assume that most sites are run on cPanel or Plesk based servers and finally MariaDB is starting to rise.There are currently ~110,000 active sites using K2 v2.7.x - the actual number is probably higher if you consider we aggregate monthly data and only when a super admin navigates to the K2 backend. That's a huuuuuge number if you think about it. And of course K2 is on a steady track to surpass 3 million downloads within the year.
Enjoy K2 v2.7.1 :)