ブログ人 からのブログの引っ越し

ブログ人から終了通知のメールが来たので、ブログ人で開いていた写真掲載のブログを新たに作成した WordPress なブログに引越ししました。その移行手順をメモしておきます。

まず、ブログ人からの移行用データの取得ですが、次のような制限がありました。

  • データのエキスポートでは、画像ファイルを取得できない
  • 管理メニューにはファイルのダウンロードがない(アップロードしかない)
  • FTP も利用できない

移行は、ローカルに移行テスト用のブログを WebMatrix で作成して、問題がない状態で移行できたら、新規に作成したブログに流し込む方法をとりました。流しこむ方法は、エキスポートファイルのインポートと、画像ファイルのアップロードとしています。ローカルの WordPress のバックアップを取って、それを流し込む方法もありますが、今回は採用しませんでした 😉

移行手順は次のとおりです。

  1. WebMatrix で移行テストなローカル環境を作成
  2. ブログ人から移行用データを取得
  3. 画像ファイルを取得
  4. 画像ファイルをローカルサイトのフォルダにコピー
  5. 移行用データ中の画像リンクの URL を変更
  6. テスト環境にインポート
  7. テスト環境での動作テスト
  8. 本番用の WordPress なブログを作成
  9. 画像ファイルをアップロード
  10. 移行用データ中の画像リンクの URL を変更
  11. 本番環境にインポート
  12. 本番環境での動作テスト
  13. ブログ人側での引っ越し通知
  14. テスト環境を削除(動作テスト用に取っておいても)

1. WebMatrix で移行テストなローカル環境を作成

WebMatrix を用いて移行テスト用の WordPress なローカルサイトを作成する。
作成方法は検索サイト(Google, Bing その他)で webmatrix wordpress で検索すれば参考になるサイトが見つかるかと 😉
WordPress なサイトが作成できたら、次の設定をする。

  • 投稿ユーザーを作成
  • 外観(ヘッダー画像その他)を設定
  • パーマリンクの設定

パーマリンク(記事の固定 URL 設定)は、移行する記事の間でリンクが設定されている場合、インポート後にパーマリンクの設定を変更すると、記事間のリンクが切れてしまうので注意が必要です。

2. ブログ人から移行用データを取得

ブログ人にログインし、ブログの名前をクリック、「ブログ編集のショートカット」の「管理」の「記事の読み込み/書き出し」をクリック。「記事を書き出す」の説明を読んで、指示にしたがって操作する。

取得できるデータは、「記事」と「記事へのコメント」になります。

3. 画像ファイルを取得

サイトのフォルダ構成を再現したいので、Gnu Wget を利用して取得する。コマンドライン ツールの利用に不慣れな場合は、サイトのフォルダ構成もクローンするツール「ホームページクローン作成」が利用できます(ちょっと使ってみましたが、ユーザ インターフェイス部分のみ作りこんでいて、実際のデータ取得部分は GNU Wget を起動していました(GNU Wget はzip ファイルに同梱されていました))。
以下は、ホームページクローン作成を利用するときの説明です。
「保存したいサイトのURL」にブログのトップの URL(http://○○○.blogzine.jp/)をセット(○○○はブログの固有値)
「保存先フォルダ」に保存先のフォルダをセット
「開始する」ボタンをクリックすると保存先フォルダへのクローン作成が始まります(コンソール画面が表示され、GNU Wget が起動します)。
データ取得が終了すると、コンソールが閉じて終了メッセージのウィンドウが表示されます。

4. 画像ファイルをローカルサイトのフォルダにコピー

wp-content/uploads フォルダに Blogjin フォルダを作成する(ローカルサイトは、「ライブラリ」→「ドキュメント」→「My Web Sites」→「作成したブログ名」に保存されています)。

次の2つのフォルダをコピーする。

  • ○○○.blogzine.jp/blog/images フォルダを Blogjin フォルダにコピー
  • ○○○.blogzine.jp/photos フォルダを Blogjin フォルダにコピー

5. 移行用データ中の画像リンクの URL を変更

テキストエディタ(メモ帳でも可(移行用データが大きいと開けないかも))で「2.ブログ人から移行用データを取得」で取得した移行用データを開き、画像へのリンクと img タグの URL を変更する(置換機能を使う)。
「画像へのリンク」
変更前: http://○○○.blogzine.jp/.shared/image.html?
(「?」が特殊文字扱いされる場合は「\?」とするなどしてエスケープしてください)
変更後: http://localhost:xxxxx/wp-content/uploads/Blogjin
(xxxxx は WebMatirix で起動したローカルのテスト ブログのポート番号)
「img タグ」
変更前: http://○○○.blogzine.jp/blog
変更後: http://localhost:xxxxx/wp-content/uploads/Blogjin

変更後のファイルを保存する(別名で保存したほうがいいかも)。

6. テスト環境にインポート

テスト用のブログにログインする。
ツールメニューのインポートを選択する。
Movable Type and TypePad を選択する(インストール 画面が開いたらプラグインをインストールする)。
「参照」ボタンをクリックする。
「5. 移行用データ中の画像リンクの URL を変更」で保存した移行用のファイルを選択して「開く」ボタンをクリックする。
「ファイルをアップロードしてインポート」ボタンをクリックする。
元記事の著者へアサインする新ブログのユーザーを設定して、「Submit」ボタンをクリックする(各記事の作成者は、ここで設定した新ブログのユーザーになります)。

インポートが終わると、取得した「記事」と「記事へのコメント」がテスト環境のブログに取り込まれていることが確認できます。

7. テスト環境での動作テスト

文字化け、画像の表示、サイト内リンクのリンク切れなどが無いことを確認する。
問題があったら、問題が起こらないようにインポート用のファイルを修正して、全記事を削除してから、再度インポートを行なって、再度動作テストを行う。

※問題があったときの全記事の削除方法
投稿一覧を表示
タイトルのチェックボックスをチェック(すべての投稿にチェックが付く)
一括操作の「ゴミ箱へ移動」を選択
「適用」をクリック
ゴミ箱から削除
ゴミ箱をクリック
「ゴミ箱を空にする」をクリック

8. 本番用の WordPress なブログを作成

WordPress のインストール」を参考に、ブログを作成する。

なお、Microsoft Azure Web サイトに WebMatrix から「発行(デプロイ)」する方法もあります。

ホスティング サービス側でインストール用のツールが提供されていれば、それを使ったほうが簡単です(私の場合、最近ホスティング サービス側のインストール用のツールが変わったみたいなんですが、そのツールがエラーを吐くので、DB 作成と WordPress の導入を手動で行いました :mrgreen: )。

9. 画像ファイルをアップロード

「4. 画像ファイルをローカルサイトのフォルダにコピー」と同様のことを FTP を用いて行う。FTP が使えない場合は、ホスティング サービス側でファイルのアップロード手段が提供されていると思いますので、その手段を利用してアップロードします。

10. 移行用データ中の画像リンクの URL を変更

テキストエディタで「7. テスト環境での動作テスト」の確認を終えた移行用のファイルを開き、ローカル用の URL を本番サイトの URL に変更し、保存する。
変更前: http://localhost:xxxxx
変更後: 本番サイトの URL

11.本番環境にインポート

「テスト環境にインポート」と同様の手順で「10. 移行用データ中の画像リンクの URL を変更」で保存したファイルをインポートする。

12. 本番環境での動作テスト

文字化け、画像の表示、サイト内リンクのリンク切れなどが無いことを確認する。

13. ブログ人側での引っ越し通知

本来なら、旧サイトには転送設定を行い、旧サイトにアクセスがあったら、自動的に新サイトへ誘導して、新サイト側で新装開店記事を書いて、当該記事中にブックマークを新サイトの URL に変更するようお願いを書くところなんですが、ブログ人では転送設定を行うことができませんでした 🙁
.htaccess での転送設定は、ブログ人の UI には設定メニューがなく、設定を行った .htaccess ファイルのアップロードという手段もブログ人のコントロール パネルのファイル管理では .htaccess ファイルをアップロードすることができませんでした(不正なファイル名とされてしまう)。
html の meta 要素を用いた転送も、ブログ人では html の head 部分を弄る(正確には head 要素の子要素として meta 要素を追加する)ことができない(keywords にセットする文字と description にセットする文章だけは設定可能)ので、不可です(body 要素の子要素として書いちゃうのは、規定外(html の規格では文法違反)な使い方なので、ブラウザや検索サイトのクローラー側でどのような動作になるかわかりません)。
現状では、「ブログ人側に引っ越し通知の記事を書いて、読者にブックマーク等の変更を促すしか手はない」状態です。

14. テスト環境を削除(動作テスト用に取っておいても)

テスト環境の削除は、WebMatrix を起動し、テスト環境のサイトを開き、「ファイル」メニューから「サイトの削除」を選択します。
テスト環境を削除する場合、DB も削除する必要があります。
DB を削除するには、mysql.exe コマンドを利用するか、phpMyAdmin などの MySQL サーバー管理ツールを利用します。ここでは、mysql.exe コマンドを利用する方法を書いておきます(mysql.exe コマンドがあるフォルダへパスが通っていない場合は、コマンドをフルパスで指定するか、カレント ディレクトリを mysql.exe コマンドがあるフォルダにしておく必要があります)。

mysql -u root -p
=> MySQL を導入した際に設定した MySQL の root アカウントのパスワードを聞かれるので入力する。

データベースの一覧を表示し、削除するデータベース名を確認する

mysql> show databases;

データベースを削除する

mysql> drop database データベースの名称;

対話モードを終了する

quit

MySQL が不要な場合には MySQL をアンインストールします。
注) アンインストール前に MySQL のサービスを停止しておかないと正常に削除できません

サービスの停止は、「コントロール パネル」→「システムとセキュリティ」→「管理ツール」から「サービス」を選択してサービス一覧を表示し、「MySQL」を選択して停止させます。


2 thoughts on “ブログ人 からのブログの引っ越し

  1. ブログ人のサービス終了が迫り、画像の引っ越しをどうしようか困惑していましたが、この記事に救われ無事にブログの移設がおこなえました。ありがとうございます。

    1. コメントありがとうございます。
      記事がお役に立てたようでよかったです 🙂

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です