WordPress NextGEN Gallery – SEO Permalink Patch

WordPress LogoAfter converting my gallery from Coppermine to NextGEN, one of the only downsides was the non-SEO friendly nature of NextGEN’s default permalink structure.

After searching through Google, its seemed others had also raised the issue, but the feature was as-yet unimplemented by Alex Rabe, NextGEN’s developer. Undaunted by this, I set about dismantling NextGEN’s code to implement it myself.

So, after several hours of coding, hacking and bug-fixing, I have released the changed files for anyone who wants to implement the feature in the future. Just download the patched version of NextGEN (tar.gz | zip | changed files only) and replace your current NextGEN plugin files. You will need to update your permalink structure once after activating the SEO settings in the NextGEN Options page.

Disclaimer

Obviously there is a risk in using this as it I haven’t tested on anything other than my own website. Remember to backup your current nextgen-gallery plugin folder, as well as any customised CSS files you have.

I have submitted the changes to Alex, so hopefully they should be integrated into the next release of NextGEN.

If you have any questions/comments, please by all means ask :)

Update 21:00 BST, 8th July 2010

I have been testing the changes and have found a couple of minor bugs, mainly relating to the use of European characters and quotes in gallery/album names. These bugs have now been fixed, and a proof-of-concept for European characters is here.

The archives above have been updated to include these changes. If anyone can provide feedback (even a “it works!”) it would be much appreciated – I’m trying to save Alex as much testing as possible :)

OpenBooking – Testing Needed!

openBooking Logo

Although not in the relaxed way I’d have wanted, but my dissertation project has now been handed in! After a week of frantic, Red Bull and Relentless -induced coding and writing, 9,500 words of write-up and 14,500 (ish) lines of PHP, SQL, XHTML and CSS are complete

The overall system is a distributable web-based resource booking system, mainly aimed at schools/colleges/universities, but it’s customisable enough to be used in pretty much any environment. Admin users can create slots, locations, categories and resources and then users can create bookings.

As it’s a distributable project (released under the Mozilla Public License – Wikipedialegal text), if anyone can actually use the project, let me know and I’ll get a copy to you. Only requirements are a database server and an LDAP (or Microsoft Active Directory) server, but most networks should have these. I’ve only tested the app with OpenLDAP and MySQL/PostgreSQL, but in theory it should work on other platforms.

Even if you’re not able to test the system personally, but feel free to suggest it to bosses, managers etc. The existing public code trunk has been updated and distributable archives have been uploaded to the OpenBooking Google Code account. I’ll be getting a full-featured homepage with forum and wiki running in the next week or so :)

Free, Open Source Software: Why You Should Care

The intricacies of free, open source software (or FOSS) are very detailed (and sometimes political), so I won’t be going too deep here. What I will do, however, is outline the key benefits of FOSS over commercial software and why you – the user – should care. I will also be writing a blog on how you can get involved with FOSS projects (in both technical and non-technical ways) in the near future, so stay tuned!

Free vs Open Source

“Open source” relates to the “source code” – the bare-bones of the program – being freely available to the public. However, just making your source code “open” does not make the software FOSS. To be truly “free”, the software must obey the four freedoms published by the Free Software Foundation:

The freedom to run the program, for any purpose (freedom 0).

The freedom to study how the program works, and change it to make it do what you wish (freedom 1).

The freedom to redistribute copies so you can help your neighbor (freedom 2).

The freedom to distribute copies of your modified versions to others (freedom 3).

The freedoms allow you (the user) to effectively do whatever you like with the software, and use it for whatever purpose you like, as well as change and redistribute it as much as you like. The author of the software can distrubute the software under certain open source licenses, however these licenses have been vetted to uphold the four freedoms and serve to protect the author from exploitation rather than restrict the user.

Why You Should Care

So why should you – the user – care if the programs you use are FOSS or commercial? The truth is that many users don’t care, however there are an rapidly increasing number of FOSS applications that can compete with and even out-perform their proprietary rivals on performance, so the open source equivalent is very often better at the task. For some examples of great FOSS applications, check out my previous blog.

FOSS often has hundreds, possibly thousands, of developers looking at the code behind the application, so you can be confident that thousands of pairs of eyes have carefully scanned your program for vulnerabilities. If a flaw is found, anyone can submit a fix for it. These fixes can then be merged into the overall program and released extremely quickly and efficiently, so you are always getting the best software possible.

FOSS is also sustainable and user-driven. This is due to the thousands of volunteer users just like yourself, who populate support channels such as message forums, discussion lists and chat channels. If you’re having difficulties with an application, the chances are that someone else has had the same problem and has posted their solution in the support community. Developers do take notice of suggestions that users make in the community, so if you have a “Wouldn’t it be great if …” idea that isn’t currently implemented, the chances are that it will be implemented if it’s within the scope of the application.

Many people use proprietary software because they simply don’t know that anything else exists, and because they haven’t experienced anything better. Isn’t it about time that you thought about the quality of your computing experience?

Further Reading

3 Great Open Source Apps

In a (somewhat vain) attempt to keep this blog a bit more up-to-date (I’ve set myself a target of one entry a week!), I hope to start writing some shorter blog entries in the future. In the first of these shorter excerpts, I’ll be looking at a few great free, open source applications that anyone can start using right now, for free.

Firefox – Web Browser

Mozilla’s Firefox web browser is quite possible one of the biggest names in open source software, and a product almost everyone is familiar with; at least in name.

For me, the benefits of using Firefox include what can only be described as an arsenal of add-ons and extensions that make Firefox far more than just a web browser. Among the extensions that I use are Adblock Plus (the web has never been the same again), the venerable Web Developer Toolbar and HTML Validator combination (in my opinion, the staple toolbox for any web developer) and DownThemAll (a great resumable download manager, complete with checksum support).

Also present is the benefit shared by most open source applications: cross-compatibility for almost any platform and architecture.

Songbird – Media Player

From the same stable as Firefox, but very often overlooked, is Songbird. I have only started using Songbird as my media manager of choice within the last three months, however it is incredibly versatile, discrete, and shares the cross-compatibility benefit, so I can use the same player on my MacBook and my Windows and Linux environments on my desktop PC.

Like Firefox, it benefits from extensions, although the extension support isn’t at the level of Firefox’s. A feature I do really like though is the unobtrusive mini-player – it makes quickly flicking through tracks a breeze – especially after Microsoft abolished the Media Player toolbar feature in Windows 7 and Media Player 12!

Pidgin – Instant Messaging (Windows Live Messenger – MSN)

After growing frustrated with the bloat of Windows Live Messenger, I turned to Pidgin – another open source alternative that is already shipped with many Linux distributions as the Instant Messenger (IM) client of choice.

An advantage of Pidgin (albeit one that I don’t use) is the ability to handle multiple IM protocols: geek-speak for being able manage your MSN, AIM, Yahoo!, Google Talk, ICQ and a whole host of other IM accounts in one place, and as with Firefox and Songbird, the great number of plug-ins available really do extend the functionality. For those music-fans that like people to know what they’re listening to, there’s Music Tracker, and the host of other plug-ins included as standard.