Hallo,

Ik heb urls als article.php?id=1. Ik zou deze graag willen omzetten naar titels in urls. Dit zou met .htaccess kunnen, maar ik kom er niet uit. De id wordt via php uit de database gehaald. Is er iemand die me zou kunnen helpen?

Juul
Het beste lijkt mij om in het algehele ontwerp van je website hier rekening mee te houden zodat je één integrale aanpak voor URL rewriting kunt gebruiken. Dit is waarschijnlijk op termijn beter/makkelijker dan het onderhouden van een kluwen van rewriterules.

Ik zou dit doen door het aanmaken van één RewriteRule die alles doorstuurt naar index.php, waar vervolgens bepaald wordt welke pagina/content geladen moet worden.

Dit is geen eenvoudig onderwerp wat je in 1 avond onder de knie hebt. Je zult hier ook het een en ander over moeten lezen en zelf uitproberen wat jij het makkelijkste vindt. Ook zul je na moeten gaan denken hoe je je interne links organiseert en hoe je deze consistent houdt.

De uitdaging is dus (minimaal) tweeledig: aan de ene kant moet je een stuk code hebben die een pagina een mooie naam ("slug") geeft, en anderzijds moet je een stuk code hebben die de juiste informatie kan vinden bij de mooie URL (de terugvertaling van de "slug").

Of je schrijft 345983276389630683867336736 RewriteRules, dat kan natuurlijk ook.
Ikzelf gebruik Multiviews, een Apache-feature om SEO-linkjes te kunnen maken.

De structuur is als volgt:
www.site.nl/nieuws/42/Dit-is-een-nieuwsbericht.html
Waarbij er gekeken wordt naar 42 als ID, en niet naar de slug die er na volgt.
Uiteraard kan je aan de hand van de titel in de database waarop je de slug baseert met een location-header doorsturen. Let er wel op dat je dan 301-header gebruikt om te laten zien dat de URL zonder slug niet de juiste is.

Niet zo moeilijk te implementeren verder.

I.p.v. Multiviews, zou je ook een paar Rewriterules kunnen gebruiken, i.p.v. van die overdreven aantal die Thomas suggereert.
Of je pakt een kant en klaar framework als je nog nog moet gaan ontwikkelen. Dan heb je al gauw gebruiksvriendelijke en dynamische URL's en zijn deze ook net zo makkelijk helemaal SEO te maken met behulp van zogenoemde slugs.

Reageren