今回は、パーマリンク設定URLが設定できないブログサービスの内1つの、Googleの提供サービスであるBloggerブログからWordPressへ移行した場合についての、パーマリンク設定URLの一括でのリダイレクト処理方法です。
Bloggerブログの場合のパーマリンクURLは自動的に、
https://◯◯◯◯.blogspot.com/年/月/投稿タイトル.html
となってしまいます。
- このパーマリンク設定URLをWordPressへ移行した場合には、WordPressでのパーマリンク設定により異なりますが、はじめの移行時にはパーマリンク設定を合わせてリダイレクト処理をすることが望ましいと思います。
- URLには、極力日本語を含まない・使わない方が賢明かと現時点では思われます。
- リダイレクト処理一括設定方法です。
- そのredirect.phpをFTPソフトなどでテーマ内にアップロードします。
- この出力されたredirect処理のコードをhtaccessに記述します。(コピペ)
- .htaccessは必ずバックアップをとってからにしましょう。
- 以下の投稿記事も参照してください。
- RewriteRule ^による一括リダイレクト設定処理は以下のサイトを参照してください。
- Redirect 301コードによるもうひとつのリダイレクト処理方法。
このパーマリンク設定URLをWordPressへ移行した場合には、WordPressでのパーマリンク設定により異なりますが、はじめの移行時にはパーマリンク設定を合わせてリダイレクト処理をすることが望ましいと思います。
具体的には、以下のように設定します。
/%year%/%monthnum%/%day%/%postname%/
上記がBloggerブログにおいてもデフォルトでの初期値設定としてブログのパーマリンクURLになっています。
しかし、これですと長いパーマリンクURLになってしまいます。
できることなら覚えやすいURLの方がいいですよね。また、日本語が混じっているURLですともっと長くなってしまします。そして、その日本語が入ったURLアドレスをコピーしてどこかに貼り付けたりすると文字化けみたいなURLになっていることがわかると思います。
URLには、極力日本語を含まない・使わない方が賢明かと現時点では思われます。
さて、記事がいくつもあるブログを移行させた場合には、何百記事という膨大なURLをひとつひとつリダイレクト設定を記述していくのも骨が折れる作業になります。
そこで、カスタム投稿内にBloggerブログ時のパーマリンク設定URLが残っています。
このカスタム投稿内にあるURLを抽出して、自動的にリダイレクト設定を記述した一覧を作成します。
リダイレクト処理一括設定方法です。
まず、各々が使用しているテーマにてpage.phpがあります。そのpage.phpをコピーして内容を以下のように編集して子テーマ内にアップロードします。
<?php /*
Template Name: export
*/ ?>
<?php
$posts = get_posts('numberposts=1000');
global $post;
?>
<?php if($posts): foreach($posts as $post): setup_postdata($post);
echo "Redirect permanent ";
echo get_post_meta($post->ID,'blogger_permalink',TRUE);
echo " ";
the_permalink();
echo "<br />";
endforeach;
endif;
?>
上記コードを既存のpage.php内のコードを削除してファイル名は何でも良いのですがredirect.phpとでもします。
そのredirect.phpをFTPソフトなどでテーマ内にアップロードします。
そして、固定ページを新規作成します。
※重要)その際に、固定ページのテンプレート設定でexportというテンプレートを選択します。
その後、固定ページを公開してもいいですが、プレビューしただけでも過去のBloggerブログ時のパーマリンク設定URLとWordPressでのパーマリンク設定URLがすべて一覧でページ内にリダイレクト処理コードを付加して出力されます。
こんな感じで出力されます。
記事数に比例して行数が多くなります。
この出力されたredirect処理のコードをhtaccessに記述します。(コピペ)
その際に、該当のhtaccessと(FTPソフト(FTPツール)やファイルマネージャーなどを使用して)置き換えます。
プラグインのRedirectionなどを使わずに、パーマリンクURLを現在のWordPressにおいてのパーマリンク設定URLにリダイレクト処理することができます。
あまりにもリダイレクト処理数が多すぎると、リダイレクト処理が多すぎるといった警告表示がされることがありサイト自体が表示できなくなってしまうので、
.htaccessは必ずバックアップをとってからにしましょう。
サーバーなどにもよりますが、Redirect permanentが使用できない場合には、RewriteRuleを使用してリダイレクト処理を行ってください。