共通・FC2ブログJavaScript転送策
FC2ブログからのURL転送を行う際には、
サイトにアクセスしてきた端末ごとのテンプレートに合わせてURL転送を行います。
JavaScriptを利用した転送を保険的に設置しておくと、
FC2ブログ側の仕様変更などの影響を減らした安定した転送が行えると思います。
ここでは、トップページ・記事(投稿ページ)・カテゴリアーカイブページの、
JavaScriptによるURL転送をご紹介します。
共通・FC2ブログJavaScript転送策
FC2ブログのPC用の表示では、
独自のプラグインを追加して、JavaScriptなどを記述することができます。
このJavaScriptを利用してサイトのURL転送を記載することもできます。
PC用テンプレートの追加と編集については、
GoogleAnalyticsタグの挿入などをする場合と同じですので、
操作方法については以下を参照願います。
JavaScriptソースの指定
PC用プラグインのフリーエリアに対して設定する
JavaScriptソースは以下のような感じです。
JavaScript
1 2 3 4 5 6 7 8 9 |
<script type="text/javascript" language="javascript"> <!-- setTimeout("link()", 0); function link(){ strURL = "http://fc2.freeblg.info" + location.pathname; location.href = strURL; } // --> </script> |
こうして指定を行っておくことで、
FC2ブログ内の各コンテンツへアクセスがあった場合に、
FC2ブログ側のドメイン部分を、移転先のドメイン名に入れ替えて、
要求されたディレクトリパスでそのまま転送を行うことができるようになります。
なお「location.pathname」はルートディレクトリ(トップページ)では、
「/」が出力されますので、ドメイン部分にはスラッシュを付与していません。
出力対象ページの指定
URL転送のJavaScriptソースはそのままでは、
すべてのページでプラグインエリアが表示され、出力されてしまいます。
特定のページタイプでは独自のJavaScriptを設定する必要がある為、
以下のページタイプの表示では、このプラグインエリアが表示されないようにします。
[【HTMLの編集】]をクリックして、プラグインエリアのカスタマイズを行います。
編集エリアが表示されたら「&freearea」がプラグインによって出力される部分を表しています。
この「&freearea」部分をエリア(モード)変数で囲み、以下のページタイプのみで出力するようにします。
※「エリア(モード)変数: FC2ヘルプ | FC2ブログ | テンプレート用 変数一覧」
- トップページ
- 記事(投稿ページ)
- カテゴリアーカイブページ
エリアタグではOR条件などの記載方法は利用できません。
その為、すべてNOT条件で囲みます。
- タグアーカイブページ 以外
<!–not_tag_area–> ~ <!–/not_tag_area–> - 年月アーカイブページ 以外
<!–not_date_area–> ~ <!–/not_date_area–> - 検索結果ページ 以外
<!–not_search_area–> ~ <!–/not_search_area–>
実際に設定した状態は以下のようになります。
1 2 3 |
<div class="plugin-freearea" &align> <!--not_tag_area--><!--not_date_area--><!--not_search_area-->&freearea<!--/not_search_area--><!--/not_date_area--><!--/not_tag_area--> </div> |
設定が完了したら[更新]をクリックしてプラグインを保存します。
これによって、トップページ・記事(投稿ページ)・カテゴリアーカイブページでは、
JavaScriptにてドメインのみを移転先に置き換えたURLに対して転送が行われます。
※プラグインは一時的に非表示化しておくこともできますので、
事前に設定を投入しておき、実際に転送を開始するまでは出力しないことも可能です。
このプラグインによって万が一<meta>タグによる転送が、
FC2ブログなどの仕様変更によって無効化されてしまった場合の
保険的な意味合いとしても設置しておくことができます。
FC2ブログのテンプレートに対して、<meta http-equiv=”refresh” ・・・と挿入し保存すると、
保存後に<meta http-equiv=”refresh”部分のタグは削除されてテンプレートが更新されます。
これは、FC2ブログ側が<meta http-equiv=”refresh”の使用を認めていないと感じ取ることができます。
その為、代替案で挿入した<meta>タグが無効化される可能性も考えられます
また、JavaScriptで転送を行った場合には、
ドメイン名以降のディレクトリ部分を取得することができ、
テンプレート編集では再現できないURLも、JavaScriptならそのまま転送できます。
特に年別、年月別、年月日別のアーカイブページのURL転送では有効です。
共通・FC2ブログmetaタグ転送策
metaタグを利用したURL転送については以下でご紹介しています。
さいごに
JavaScriptを利用したURL転送では非常に簡単な記述で、
URLの転送を行うことができます。
とは言え、すべてのアクセスがJavaScriptが有効な状態でアクセスしてくれるとは限りません。
その為、JavaScriptによる転送は、
テンプレート編集による<meta>タグ転送が行えないパターンに限定して
利用するといい転送方法であると私は考えています。
FC2はFC2, Inc.の商標であり、FC2ブログはFC2, Inc.のサービス名称です。
FC2ロゴ、アイコンその他のマーク等はFC2, Inc.の商標であり、FC2, Inc.の著作物です。
公開日:
最終更新日:2014/12/04