Skip to content

Instantly share code, notes, and snippets.

@bennylope
Created February 23, 2012 19:50
Show Gist options
  • Save bennylope/1894706 to your computer and use it in GitHub Desktop.
Save bennylope/1894706 to your computer and use it in GitHub Desktop.
Canonical URLs with Jekyll
<link rel="canonical" href="http://yourdomain.com{{ page.url | replace:'index.html','' }}" />
@barbolo
Copy link

barbolo commented Mar 18, 2019

<link rel="canonical" href="{{ page.url | absolute_url }}" />

@mrshannonyoung
Copy link

mrshannonyoung commented Oct 9, 2020

<link rel="canonical" href="{{ page.url | absolute_url }}" />

When on the 'homepage' the URL generated will be /, which is not valid.

I use a variation of this.

{% if page.url =='/' %}{{site.url}}{% else %}{{page.url | absolute_url}}{% endif %}

This prevents an error with Google SEO report on Lighthouse

Document does not have a valid rel=canonicalRelative URL (/)
Canonical links suggest which URL to show in search results.
https://web.dev/canonical/

A caveat though. With jekyll serve {{site.url}} is set to localhost:4000, when you do a jekyll build {{site.url}} is replaced by whatever domain name you set in the _config.yml

@elishadamu97
Copy link

<link rel="canonical" href="{{ page.url | absolute_url }}" />

When on the 'homepage' the URL generated will be /, which is not valid.

I use a variation of this.

{% if page.url =='/' %}{{site.url}}{% else %}{{page.url | absolute_url}}{% endif %}

This prevents an error with Google SEO report on Lighthouse

Document does not have a valid rel=canonicalRelative URL (/)
Canonical links suggest which URL to show in search results.
https://web.dev/canonical/

A caveat though. With jekyll serve {{site.url}} is set to localhost:4000, when you do a jekyll build {{site.url}} is replaced by whatever domain name you set in the _config.yml

Please where do I place this code in my Jekyll website?

@elishadamu97
Copy link

Please where do I place this code in my Jekyll website?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment