paulkaufman.nl

Mogen canonical tags een relatieve URL bevatten?

Het korte antwoord: nee, dat mogen ze niet. Het lange antwoord waarin ik uitleg wat canonical tags zijn, wat ze doen en waarom ze geen relatieve URLs mogen bevatten, lees je hieronder.

Wat zijn canonical tags?

Een canonical tag is een meta tag die de primaire URL van een pagina aangeeft. Dat is best wel handig, want als verschillende pagina’s dezelfde content hebben, kun je met behulp van canonical tags aangeven welke van die pagina’s het belangrijkst is voor zoekmachines. Daarmee voorkom je problemen met duplicate content.

En duplicate content is slecht voor jouw SEO, mmmkay.

Een voorbeeld laat de werking van een canonical tag beter zien.

Stel je een webshop voor die truien verkoopt. Er is een speciale categoriepagina voor rode truien en je kunt met een fancy filterfunctie alle herentruien selecteren.

De URL van de categoriepagina ziet er als volgt uit: https://www.truienshop.nl/rode-truien. Wanneer je de filterfunctie inschakelt verandert de URL naar: https://www.truienshop.nl/rode-truien?size=L.

Omdat elke rode trui in de maat L voorradig is, is de content op beide pagina’s identiek. Sterker nog: de beschrijving onderaan de producten blijft bij het instellen van filter onveranderd. Kortom: er zijn twee verschillende URLs met dezelfde content.

Hoe los je dit op?

Heel eenvoudig! Op de pagina https://www.truienshop.nl/rode-truien?size=L geef je met behulp van de canonical tag aan dat de pagina https://www.truienshop.nl/rode-truien primair is. Zoekmachines volgen dit signaal en zullen de canonieke pagina’s vaker crawlen en in hun zoekresultaten weergeven.

Let wel op dat een canonieke tag slechts een suggestie is voor zoekmachines. Als je inconsequent bent met het instellen van de tags of je stelt de canonicals helemaal verkeerd in, is er een kans dat de tags genegeerd worden. In dat geval kiest Google zelf één URL als de canonieke versie en dan is het best vervelend als hij net de verkeerde kiest…

De canonical tag uitgelegd

Waar stel je de canonical tag in?

Een canonical tag stel je met behulp van een klein stukje code in. Je voegt <link rel=”canonical” href=”URL” /> toe aan de head-sectie van elke pagina.

Wanneer je van een niet-canonieke naar canonieke pagina linkt, vermeld je de URL van de canonieke pagina. Canonieke pagina’s laat je naar zichzelf verwijzen. Zo laat je er geen twijfel over bestaan welke pagina’s canoniek zijn.

Laten we het voorbeeld van de truienshop nog een keer gebruiken.

https://www.truienshop.nl/rode-truien?size=L is niet canoniek en heeft dus de volgende code in de head-sectie staan:

<link rel="canonical" href="https://www.truienshop.nl/rode-truien" />

https://www.truienshop.nl/rode-truien is daarentegen wel canoniek en verwijst daarom naar zichzelf. Die canonical tag van die pagina is dus dezelfde:

<link rel="canonical" href="https://www.truienshop.nl/rode-truien" />

Waarom mogen canonical tags geen relatieve URLs bevatten?

Laat ik eerst even uitleggen wat een relatieve URL is. Een relatieve URL is een URL zonder de domeinnaam. De relatieve URL van https://www.truienshop.nl/rode-truien is bijvoorbeeld /rode-truien.

Veel ontwikkelaars gebruiken relatieve URLs voor interne links op een website. Het is vaak sneller, gemakkelijker en het levert minder problemen op als er van domeinnaam wordt gewisseld.

Ondanks deze voordelen, kunnen relatieve URLs voor een SEO problematisch zijn. Ze kunnen bijvoorbeeld crawl-problemen opleveren bij Google, zoals Ruth Burr Reedy hieronder duidelijk uitlegt.

Ook bij canonical tags moeten relatieve URLs vermeden worden. Wat was het doel van een canonical tag ook alweer? De primaire URL markeren. Maar als je hiervoor een relatieve URL gebruikt, laat je veel ruimte voor interpretatie over bij de zoekmachines.

Als Google de volgende canonical tag tegenkomt:

<link rel="canonical" href="/rode-truien" />

…dan moet hij het deel voor de slash zelf aanvullen. En daar loopt de zoekmachine tegen een aantal opties aan:

  • http://www.truienshop.nl/rode-truien
  • http:// truienshop.nl/rode-truien
  • https:// truienshop.nl/rode-truien
  • https://www.truienshop.nl/rode-truien

Hoewel het de taak van de canonical tag is om aan te geven welke URL de belangrijkste is, moet Google alsnog zelf een keuze maken. En dat is best verwarrend voor een zoekmachine. Bovendien gaat dit tegen het hele principe van de canonical tag in: één primaire URL aanwijzen. 

Dat is dan ook de reden waarom canonical tags geen relatieve URLs mogen bevatten.

Let tot slot op dat je in een canonical tag ook altijd het protocol (http of https) specificeert. Want een URL zonder protocol is ook relatief en daardoor net zo problematisch voor SEO.

Bekijk meer blogs