機能 ショートカットキー
リファレンス(参考URL)一覧へ移動 R
記事URLをMarkDownとしてコピー Ctrl+M
前のコードタグへ移動 Ctrl+←
次のコードタグへ移動 Ctrl+→
ヘルプを表示・非表示 H
Tips
- ショートカットキーは記事上で有効です。ヘッダー/フッター付近では機能しないことがあります。
- コードタグ移動機能がうまく動かないときは、Shift+F5でページを更新してみてください。
- このウィンドウを閉じるには、Hキーをもう一度押してください

Jekyll liquidでnoindex canonical keywordsを実装した

プログラミング

最初は、jekyll-seo-tagっていうプラグインで実装しようと思ってたんですが、自分で書いたほうが拡張性というか自由度があるので自分で書いてみました。
jekyll-seo-tagはWordPressでいうhookみたいなのがないようなので、例えばタイトルこそ`title=false`を指定することもできますが、調べるとcanonicalとかはそういうのがないみたいです。
つまり、canonicalが指定されていればそれを優先し、指定されていなければデフォルトを使用、というようなことが出来ないんですね。

HTMLのSEOメタタグってのは基本最初に定義したものが優先されるので、複数定義されているってのは良くないんですね。
ということで実装しました。

こんな感じでできるようにしました。

“`

layout: post
title: “test”
date: 2018-01-01 11:00:09 +0900
categories: blog
index: false
follow: true
keywords: hoge,fuga
canonical_url: ‘https://yuis.org/’

“`

**機能**

* `index: false`を指定するとnoindexにできる
* `follow: false`を指定するとnofollowにできる
* `keywords`を指定するとメタキーワードをデフォルトより優先して設定できる
* `canonical_url`を指定するとデフォルトより優先して設定できる

ソースコード

“`
{% if page.title %}{% capture new_title %}{{ page.title }} << YAYB {% endcapture %}{{ new_title }}{% else %}{{ site.title }}{% endif %}

{% if page.keywords %} {% else %} {% endif %}

{% if page.canonical_url %}{% else %}{% endif %}

“`

ちなみに`description`も少し弄っています。タイトルを先頭にくっつけるようにしています。

この記事で欲しい情報が見つからなかった方へ

この記事の更新情報がある場合があります。
この記事は以下の記事とも関連性があると思われます。

wordpress: 特定カテゴリのすべての記事をnofollow/noindexする


管理人の方針で、既存の記事の編集はせず、新しい情報や大きな既存情報の更新があった場合には、新しい記事として公開することになっています。
当記事で欲しい情報が見つからなかった・解決に至らなかった場合、これらのリンクがお役に立てるかも知れません。

どうやってこの関連記事を生成しているの?
この機能のPHPソースコード(2500行)

コメントを残す

Close Menu