WordPress.comからの離脱(引越し)の作戦その2

2018年11月13日Webデザイン

WordPress.comから、レンタルサーバーのサービス「エックスサーバー」への引越し。その作戦第2回目です。

引越しを決断した理由や方向性は前回記載しました。

今回は、実際の作業と苦労話をしたいと思います。

手順概要

手順としては、

  • WordPress.comのエクスポート機能を使ってblogデータのダウンロード
  • エックスサーバーでWordPressの簡単インストール
  • エックスサーバーのWordpressのインポート機能を使ってblogデータのアップロード
  • ドメイン名をエックスサーバーへ移管

という流れです。

一見すると、簡単に見えます。色々はまるところがあるので、それぞれ見てみましょう。

WordPress.comのエクスポート機能

WordPress.comには、blogデータのエクスポートの機能が用意されています。これを使うと、blogの全データをzip形式でローカルのパソコンに取り出せます。(「設定」→「エクスポート」)

オプションがいくつかあります。投稿者を指定して、そのデータを取り出す。または、特定のカテゴリーのみのデータを取り出す。など、選択可能です。

また、写真など、メディアに使ったファイルも別途一括エクスポートできます。

後で述べるように、エックスサーバーのWordpressにインポートする際に、メディアファイルを移行元からダウンロードする機能があり、これを使えるので、今回はメディアのエクスポートされたデータは使いませんでした。

エックスサーバーでWordpressの簡単インストール

私が契約したエックスサーバーというレンタルサーバーサイトは、サーバーパネルという設定画面が用意されています。

その中の、Wordpress簡単インストールという項目で、一発で簡単にインストールして使えるようになります。

ただし、後で述べるように、この方法、ドメイン毎にフォルダができるようです。デフォルトのドメインでWordpressのインストールを行って、そのアプリ(WordPress)を別のドメイン指定でアクセスする方法が分かりませんでした。

まずは、何しろ、WordPress.comからのデータを取り込む為に、エックスサーバー上のデフォルトドメインに簡単インストールの手順でWordPressをセットアップしました。

WordPressのインポート機能

エックスサーバーで簡単インストールされたWordPress。ここにインポート機能を使って、先ほどローカルに落としたblogデータのアップロードします。

この時、インポートのオプションで、”添付ファイルをダウンロードしてインポートする”を実行すると、オリジナルのサイト(引越し元のWordPress.comサーバー)からプログラムが勝手にダウンロードして適切にサーバーにコピーするようです。

これで大方のデータは移行できます。

エクスポート/インポートはよくできていて、投稿データだけではなく、タグやカテゴリーもそのまんまコピーされます。メニュー階層も元の通り。また、投稿に着いたコメントもきちんとそのままコピーされました。ただ、WordPress.comが行っているカスタマイズに関係のあるところは正しく表現されません。具体的には、埋め込みのYoutube動画や、Google map の地図、お問い合わせのなどは、ShortCodeという表記がそのまま表現されてしまいます。解決策は次回解説します。

単なるデータコピーだとGoogle mapのShortCodeが表示されてしまった
単なるデータコピーだとGoogle mapのShortCodeが表示されてしまった
オリジナルはこのようにGoogle mapが埋め込まれて表示されていました

また、それ以外にも、デザインテンプレートに関連するデータは引き継げないです。具体的には、サイドバーに配置したウィジェットに記載した内容、例えば、HTMLパーツとか、テキストパーツに書いたテキストなどはコピーされませんのでご注意ください。

インポート時のエラーに関して

インポートでのトラブルは、タイムアウトです。インポート処理が長すぎて、5分くらいするとブラウザにエラーが表示されます。

ただ、エラーが表示されても、内部的には引き続きインポート処理が続いています。エラー後に他のブラウザ画面でサイトにアクセスすると、投稿が増えて行く様子がわかります。

ところが、全部コピーされずに内部処理が止まってしまうことがあるようです。原因は分かりませんでした。何度かトライすると、うまくいくので、よしとしました。後から考えてみると、添付のメディアデータの取り込みをやらずに、インポート機能とは別にフォルダごとコピーを行えばよかったのかも知れません。

ドメイン名をエックスサーバーへ移管

ここまでできたらあとは、ドメイン名を付け替えればよいはず。これに関しては長くなりますので、次回の投稿にて。