イントロダクション
Google のブログサービス「Blogger」では、テンプレートの HTML を変更することで、ブログのページすべての HTML 構造を変更することができます。そして、その Blogger のテンプレートの HTML では、通常の HTML タグに加えて、Blogger の構造を決定するための専用のタグがあります。
Bloggerユーザ必見!テンプレートのHTMLを編集するときに参考になる公式ページリスト - Dr.ウーパのコンピュータ備忘録
http://upa-pc.blogspot.jp/2014/06/blogger-html-edit-ref.html
http://upa-pc.blogspot.jp/2014/06/blogger-html-edit-ref.html
今回は、Blogger のテンプレート内に記載しておくと、その時々に応じたデータへと置換してくれる、レイアウトデータタグの一つである、data:blog.url について見てみます。
レイアウトデータタグ:data:blog.url
概要
レイアウトデータタグである、data:blog.url は公式の資料によると、次のように説明されています。url: 現在のページの URL。
レイアウト データ タグ - Blogger ヘルプ
https://support.google.com/blogger/answer/47270?hl=ja
https://support.google.com/blogger/answer/47270?hl=ja
つまり、Blogger ブログにおいて、現在表示しているページの URL を示すものです。
従って、ブログページ内に自分自身のページへのリンクを設定する場合や、文中にそのページのリンクの URL を表示する場合には、Blogger のテンプレートのHTML に、このレイアウトデータタグを記載しておけば、自動的にそのページの URL に置き換えてくれるわけです。
使い方
本文中に、URL を表記したい場合には、次のように、data:blog.url をタグとして記載します。テンプレートの HTML での表記:
<data:blog.url/>
タグの属性として使用したい場合には、次のように、タグの属性名にexpr:を付与して、その属性値として、data:blog.url を指定します。
テンプレートの HTML での表記:
<a expr:href='data:blog.url'>このページへのリンク</a>
国別リダイレクトされた場合に、どんなドメインになるか?
さて、ここで一つ気になる点があります。Blogger のブログは、独自ドメインを使用しておらず、Blogger 標準のドメインを使用している場合には、そのブログを見る国によって異なるドメインの URL へと自動的に転送されます。
ブログが国別の URL にリダイレクトされる理由(ccTLD) - Blogger ヘルプ
https://support.google.com/blogger/answer/2402711?hl=ja
https://support.google.com/blogger/answer/2402711?hl=ja
その時に、data:blog.url の値はどうなるのでしょうか?
結論から言うと、data:blog.url の値は、国別リダイレクトされた後のドメインの URL になります。(実際に実験してみました。)
つまり、このページであれば、標準のURL(canonical)は、次のようになりますが、
http://upa-pc.blogspot.com/2015/03/blogger-data-blog-url.html
日本国内からこのページにアクセスすると、自動的に次の URL にリダイレクトされます。
http://upa-pc.blogspot.jp/2015/03/blogger-data-blog-url.html
そして、data:blog.url の値は、リダイレクト後の
http://upa-pc.blogspot.jp/2015/03/blogger-data-blog-url.html
になります。
つまり、canonical URL を示す目的では使えないということです。
Blogger では、canonical URL は、head タグ内の、rel 属性の属性値として 'canonical' を持つ link タグの href 属性に記載されています。
その部分を、Blogger のテンプレートで見てみると、
<b:include data='blog' name='all-head-content'/>
となっており、個別の head 内の link 属性の値などは見ることができません。
従って、ブログ内のページで、canonical URL を取得する必要がある場合には、JavaScript などを使用して、head タグ内の canonical URL を取得する必要があります。
javascript:正規化された(canonical)URLを取得する - サンプルコードと使用例
http://upa-pc.blogspot.com/2015/03/javascript-canonical-url-get.html
コメントを投稿
コメント投稿機能について