canonicalタグとは?
まずは導入部ということで、例にならってcanonicalタグについて簡単にご説明します。
canonicalタグは、headタグに入れる要素の1つでURLの正規化を目的としたタグになります。
検索結果で表示されるURLや計測パラメータ付きURLなど何かしらの意味・意図があったとしても「URLは違うのにコンテンツは一緒」になる場合、重複ページ(コピーコンテンツ)と判断されてしまう可能性があります。
検索結果でのURLについては、他の問題からより綿密に設計・構築する必要がありますが意図しないパラメータや余分なパラメータが付いている場合などに発生しうる問題です。
コピーコンテンツと判断されてしまうと順位下落要因となってしまうので、そういった悪影響を極力回避するためのHTMLタグになります。
<link rel="canonical" href="#">
このタグを設置することで「どこまで効力を発揮しているのか」については分からないので明言出来ませんが、ウェブマスターフォーラムやSEOを生業としている企業、SEO情報を配信しているブログでは頻出する内容なので、設置することをオススメします。
ただ、設置方法(記述するURL)を間違えると逆効果になってしまいますので取り扱いには注意しましょう。
*canonicalタグについては、別途記事を投稿しようと思います。
OGPタグとは?
次にOGPタグについてです。こちらも今更感満載ですが、導入2部的に記載します。
FacebookなどのSNSでシェアされるときに使われるメタタグになります。ここで設定されたタイトルやディスクリプション・画像・URLを使ってシェアされますので、未設定だと悲しい感じになりますし、シェアからの流入を増やしたい場合は設定しておきたいタグ達です。
<meta property="og:title" content="ページタイトル" /> <meta property="og:type" content="ページ種類" /> <meta property="og:url" content="ページURL" /> <meta property="og:image" content="画像URL" /> <meta property="og:site_name" content="サイト名" /> <meta property="og:description" content="説明文" />
こちらも別途記事を用意したいと思います。
canonicalとog:url
URLを別にしたいと思った背景
長くなってしまいましたが、ここから本題に入りたいと思います。
今回なんでそんなトリッキーな仕組みにしたかったのかと言うと、、クライアントよりシェアからの流入の場合だけ要素の出し分けと共に計測を行いたいという要望(というか相談)があった為です。
ちなみに、今回wordpressプラグインであるAll in One SEOを使って対策を行っていました。
このプラグインを使用しているとcanonicalやogpが自動で設置されるようにできるので非常に簡単な反面、カスタマイズしようと思うとfunction.phpをいじらなければなりません。
実際にカスタマイズしてみたら…
そんな背景の元、add_filterを利用して生成し直した URLが設置されるようにしました。
ちなみに、、プラグインのphpファイルの中にaioseop_canonical_urlという関数が設置されていたので、こちらを利用しました。グローバル変数から記事URLを取得しcanonicalとogpに設定されるような作りになっていました。
これで行けるでしょうとテストしてみたら、うまくいかない。。 何か間違えたのかとHTMLソースを眺めたりキャッシュをクリアしてみたりと試行錯誤するも何をやってもうまくいかない。
「先に調べておけよ」という話かも知れませんが、調べてみると、タイトル通りパラメータを全て削除してcanonicalを見ていることが発覚しました。
先の通りcanonicalはseo対策上外せない要素だったので、本件は、このままお伝えし諦めて頂きました。残念。。