Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Canonical URLs with Jekyll
<link rel="canonical" href="http://yourdomain.com{{ page.url | replace:'index.html','' }}" />
@StarWar

This comment has been minimized.

Copy link

StarWar commented Jan 19, 2013

I've set a production_url in config
I use this:

<link rel="canonical" href="{{ site.production_url }}{{ page.url | replace:'index.html',''}}">

@smileprem

This comment has been minimized.

Copy link

smileprem commented Jan 27, 2014

Thanks guys. I have used this the code by StarWar.

@quangbahoa

This comment has been minimized.

Copy link

quangbahoa commented May 14, 2014

Here is default config for site.url

<link rel="canonical" href="{{ site.url }}{{ page.url | replace:'index.html',''}}">
@filippovitale

This comment has been minimized.

Copy link

filippovitale commented Oct 2, 2018

In case you set the baseurl on _config.yml

<link rel="canonical" href="{{ site.url }}{{ site.baseurl }}{{ page.url | replace:'index.html',''}}">
@ylogx

This comment has been minimized.

Copy link

ylogx commented Jan 28, 2019

If you want to allow links to other domains, you can use following in head.html:


    {% if page.canonical_url != nil %}
    <link rel="canonical" href="{{ page.canonical_url }}"/>
    {% else %}
    <link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
    {% endif %}
@barbolo

This comment has been minimized.

Copy link

barbolo commented Mar 18, 2019

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.