Een lang verwachte verbetering zit er eindelijk aan te komen. In Joomla 3.7 krijgen we eindelijk een verbeterd URL routing systeem.Weliswaar lost dit niet direct al onze URL wensen op maar de onderliggende structuur om verbeteringen door te voeren is er eindelijk. Maar we kunnen nu eindelijk wel de vervelende ID's uit onze URL's halen!

Dit is vooral mogelijk gemaakt door het crowd funding programma van Hannes Papenberg (zie www.indiegogo.com voor details). Vooral Hannes' laatste aankondiging was bemoedigend, waar hij aankondigde dat de laatste code changes were merged in Joomla:

"Today three important Pull Requests were merged by the Joomla team, one closing a bug in non-SEF mode, one cleaning up routing further in Joomla 4.0 (thus completing the proper implementation for this in 4.0) and the last one making it possible to remove IDs from URLs in Joomla. With that and after around 500 hours of coding, explaining and defending, the work for the Joomla project in this crowdfunding project is finished."

Dit maakt Joomla 3.7 een grote stap voorwaarts, vooral samen met de andere nieuwe features die er aan zitten te komen, zoals de nieuwe admin interface en de editor changes.

Joomla 3.7 URL routing verbeteringen

Vooral onder de motorkap is het routing systeem aanmerkelijk verbeterd, al zijn deze verbeteringen niet altijd direct zichtbaar voor de gebruikers. Eén verbetering is wel degelijk zeer zichtbaar. We kunnen nu eindelijk de irritante nummers uit onze URL's halen zonder ingewikkelde toeren of extensies.

Als je in de huidige situatie een blog of Featured articles lijst hebt, wordt het database-ID van het artikel in de URL geplaatst, zoals hier:

index.php/article-category-list/8-beginners

De enige manier om daar in de huidige situatie wat aan te doen is elk individueel artikel aan een menu koppelen. In Joomla 3.7 gaat dit veranderen. Alleen als je wilt trouwens: als je liever je bestaande URL's aanhoudt kan dat gewoon. Dat gezegd hebbende, laten we eens kijken hoe het er uit ziet. De verbetering vindt je onder de knop Opties in het Artikelbeheer. In dit plaatje hieronder zie je eigenlijk alles al wat je wilt weten:

Als je naar het Integratie tabje gaat zie je de nieuwe mogelijkheid genaamd URL Routing (het zit her omdat je het per component kunt instellen). Standaard staat het op Legacy en als je dat laat staan veranderd er helemaal niks, je URL's worden opgebouwd volgens de pre-Joomla-3.7 procedure. Als je echter Modern gebruikt wordt het nieuwe routing mechanisme geactiveerd, wat veel efficienter werkt. Echter: je URL's blijven nog steeds hetzelfde. Test het wel voor de zekerheid, maar waarschijnlijk gaat het goed (zie ook het laatste stukje van deze video van Brian Teeman).

Echter, je hebt waarschijnlijk al gezien dat er een nieuwe optie opdook toen je Modern activeerde. Je ziet een nieuwe knop genaamd Verwijder IDs uit URLs. Nu, hier hoef ik niet veel aan uit te leggen, het doet precies wat het beloofd: het ID verwijderen. Als je het aanzet veranderd de eerder genoemde URL in één zonder ID:

index.php/article-category-list/beginners

Mooie schone URL's dus!

Moet ik dit gelijk aanzetten als 3.7 uitkomt?

Voor nieuwe sites zou ik dit zeker doen, zonder twijfel.  Voor bestaande sites moet je er even goed over nadenken. Je kunt dan het beste kiezen voor Legacy mode of Modern met de Verwijder-ID setting op Nee.Verander nooit zomaar een bestaande URL-structuur, dit kan serieuze SEO-consequenties hebben! Als je het doet, plan het, en maak 301-redirects aan van de oude naar de nieuwe URL's (dit gebeurt niet automatisch!).

Tenslotte zijn er behalve de zichtbare ID-aanpassingen talloze verbeteringen doorgevoerd. De code is veel efficienter geworden, met betere performance tot gevolg. Daarnaast is voor third-party developers veel makkelijker geworden om schone URL's te schrijven voor hun extensies.Mogelijk hadden velen nog meer verbeteringen verwacht, maar deze komen in Joomla 4, zoals Wordpress-style opties om een custom URL-schema te maken met bijvoorbeeld een /datum/artikel format. Check eventueel deze interessante video op de Joomladay London site met een interview met Hannes Papenberg als je veel meer wilt weten over de technische achtergrond van de changes.

Joomla 3.7 wordt verwacht in December 2016.