Hoe rewrite ik urls wanneer er meerdere subcategorieen mogelijk zijn
The productlisting is een categoriepagina die meerdere niveau's diep kan zijn, bijvoorbeeld:
wines/red-wines/years/2017
Elk deel van die link moet gaan naar de productlisting.
Wanneer je op een product klikt open je de productview, die link ziet er bijv zo uit:
wines/red-wines/years/2017/la-palma-carmenere-red-75cl
Hoe kan ik dat via htaccess voor elkaar krijgen? Het probleem is dat ik nooit weet hoe diep het product zich bevind, dat kan 1 niveau diep zijn maar ook 4 of 5 etc.
Het moet vast makkelijker kunnen dan voor elke mogelijkheid een rewrite in de htaccess te zetten.
Daarom ben ikzelf meer voorstander om een speciale ingang te maken (je index.php) waar al je requests in binnen komen. Dan heb je één mooie ingang om alles te verwerken. Dit is ook hoe haast alle frameworks werken.
Dan kan je met een enkele rewriteRule ervoor zorgen dat je een mooie URL krijg zoals
www.site.nl/wines/red-wines/years/2017/la-palma-carmenere-red-75cl waarbij wines een eigen script is, en de daarop volgende argumenten (red-wines, years etc) via PHP opgehaald kunnen worden.
Eventueel zoals je een eigen router-script kunnen bouwen zodat je zelf kan bepalen hoe de de URL wilt opbouwen. Een framework voorziet hier meestal wel in.
- Al je listings met een "/" eindigen (bijvoorbeeld wines/red-wines/years/2017/). Dit moet je dan wel heel consequent doen, en dan nog zal het gebeuren dat iets of iemand die trailing / er af sloopt.
- Al je producten op "een" extensie laten eindigen (bijvoorbeeld wines/red-wines/years/2017/la-palma-carmenere-red-75cl.html). Niet dat het dan om een echt (plat) HTML bestand gaat, maar dat ziet er niet heel "raar" uit, en dan heb je in ieder geval iets om op te filteren.
- Of gewoon in je router (zie opmerking van Ariën hierboven) de URL voor beide varianten "proberen" ("is het een listing? Nee, dan kijken we nog even bij products").
/category/wines/red/2017/ => dit is een category (of listing hoe je het ook wil noemen)
/product/wines/la-palma-carmenere-red-75cl => dit is je product
('category' verwijst dan altijd naar een categorie en 'product' naar een product waarbij je optioneel nog de hoofdcategorie (wines) kunt toevoegen aan je url)
Wat je niet wilt (en ik denk dat jij dat wel wil) is dat al deze URLs naar hetzelfde product leiden:
/wines/red/2017/la-palma-carmenere-red-75cl
/wines/red/la-palma-carmenere-red-75cl
/wines/la-palma-carmenere-red-75cl
Dat lijkt me niet gunstig voor je SEO-score en wellicht gaat Google je daar voor afstraffen.
@Snelle Jaap ea, hier worden min of meer twee onderwerpen door elkaar gegooid: enerzijds de indeling van pagina's, en anderzijds de technische afhandeling hiervan.
Als je deze onderwerpen nu eens apart behandelt? Dus eerst "dit is hoe ik het wil hebben" en dan pas "dit is hoe ik dat vervolgens ga verwezenlijken".
Allereerst: over wat voor site hebben we het uberhaupt? Is dit een site exclusief voor wijnen? Heb je dan echt een sub "wines" nodig? En als je het over een jaar hebt, heb je dan echt een sub "year" nodig? Is jaar ook echt zo belangrijk dat deze in de URL opgenomen zou moeten worden? Misschien als het een site voor exclusieve wijnen is, maar anders? En zelfs dan, de naam van een wijn is mogelijk "belangrijker" dan het jaar, dit zou je in een filter in een vervolgpagina kunnen opnemen wellicht, maar dit verder buiten de URL houden? Of misschien als een suffix in de querystring?
Ik denk dat het sleutelwoord hier "beknoptheid" is - houd URLs zo kort mogelijk.
En bij gebrek aan inspiratie, kijk eens wat andere sites doen, bijvoorbeeld die van een slijterij?
Over de indeling mag best lang nagedacht worden, dit kost waarschijnlijk meer tijd dan de technische implementatie hiervan, en al helemaal wanneer je op een later tijdstip besluit om deze naamgeving weer om te gooien :p.
>> zou je dat niet op kunnen lossen met het instellen van canonical uRLs?
Zou kunnen, maar wat zou het nut of voordeel dan zijn?
>> en al helemaal wanneer je op een later tijdstip besluit om deze naamgeving weer om te gooien :p.
Gniffel gniffel :)
En @Thomas het is een site waarop meerdere webshops staan met uiteenlopende branches, van kappers tot slijterijen tot bloemenwinkels, die kunnen allemaal hun eigen categorieen aanmaken, vandaar dat ik die url zo waterdicht mogelijk wil hebben ongeacht hoe diep de categorieen gaan.
Edit: ik zie dat Gall & Gall het ook doet zoals Rob aangaf, producten laten eindigen op een extensie. Ik denk dat ik dat is ga proberen.
Gewijzigd op 13/05/2020 11:36:21 door Snelle Jaap
>> Zou kunnen, maar wat zou het nut of voordeel dan zijn?
Dan kun je één bronbestand aanwijzen, ook al heb je verschillende pagina's/URLs met dezelfde inhoud. Zodat zoekmachines weten dat het mogelijk duplicaten zijn.
Dat snap ik, maar ik bedoelde ... wat zou het nut zijn van meerdere URLs die allemaal precies naar exact dezelfde pagina leiden?
Geen, tenzij je nog aan het schuiven bent met naamgeving.