Webサイト専門プログラマの言いたい放題

元システムエンジニアがサイト制作とプログラミングについて好き放題しゃべります。

【アメブロ⇒ワードプレスの引っ越し】

f:id:wp-lesson:20160606133650j:plain
お店の口コミなどをアメブロに投稿しているところだと、3年ぐらいで記事数が1000を超えたりします。
 
ご存知の通り、アメブロは商用利用不可ですから、お店のスタッフに持ち回りで更新させるような運用をしていると、よほど気を付けないと
ある日突然 『アメブロ停止』 なんてことにもなりかねません。

確率的に高くなくても、常にそのようなリスクを抱えて日々運用していることになります。
 
なので、勝手にアカウント停止などリスクがゼロのワードプレスへ移行する流れが増えています。
 
経営者にすると、数年間積み上げたブログ記事は財産ですからね。
 
さて、そこでネックになるのが膨大な記事をどうやってワードプレスに移行するか? です。
 
ワードプレスの記事データは、全てデータベースに保存されますが、ワードプレス同士の移行なら、次の手順が使えます。
 

1.ワードプレス同士のデータ移行

 
1.移行元のワードプレスからデータを取り出す(エクスポート)
 
2.移行先のワードプレスにデータを取り込む(インポート)
 
この1~2を行えるプラグインが標準で利用できるからです。
  
しかし1~2はアメブロには対応していません。
 
なので、フリーソフトを使います。
 
有名なソフトですが、アメブロ側の仕様が変わると使えなくなったり、アメブロをカスタマイズしているとソフトが対応しない場合があるので、確実とは言えませんが。
 
※ソフトを知りたい方はコメント欄でお尋ねください。
 
そこで、次のような手順をとります。
 

2.アメブロワードプレスへ移行

 
まず前提条件から。
 
1.ワードプレスのデータ取り込みはアメブロには対応していないが、MovableType(MT)に対応している。
 
2.前述のフリーソフトアメブロのデータを取り出しMovableType(MT)のデータ形式に変換できる。
 
このことを利用して、
 
(1)ソフトでアメブロの記事データを取り出す。
(2)ソフトで記事データをMT形式に変換する。
(3)ワードプレスでMT形式のデータを取り込む。
 
この手順なら移行できるというワケ。
 
もちろん、全てのアメブロで(1)が可能とは限りません。
(1)が可能な場合は(2)(3)が成功する望みがあるという程度です。
 
 
さて、ここまではアメブロの移行に取り組んだことがある方なら試したことがある方法かも知れません。
  
次に、より確実な方法をご紹介します。
 

3.アメブロワードプレスへ移行

 
まず、アメブロRSSを受信してCSVファイルなど手軽なテキストファイルで保存するプログラムを用意します。
 
次に、CSVをエクセルで開いて、ワードプレスのデーターベース構造に合うように、列を追加したり、エクセルの数式を活用してデータ番号を連番で追加したりします。
例)=row() 行番号をセルに表示する
 
出来上がった加工済みシートをCSVファイルに保存します。
 
それをワードプレスのデーターベース管理ツール(phpMyAdmin)から、所定のテーブルに一括で取り込みます。
 
例)wp_posts 記事データの本体
  wp_postmeta 記事の付随データ
 
 
この方法のデメリットは、
 
・プログラムの知識
・データベースの知識
ワードプレスのデータ構造の知識

 
が必要だということです。
 
メリットは、
 
・確実性
 
です。
 
アメブロRSSを配信する仕様であり続ける限り、通用するからです。
 
ポイントは、CSVファイルをデータの中継に使うことにあります。
 

補足 CSVとは?

 
CSVファイルというのは、カンマやタブで1つ1つのデータを区切ったテキストファイルのことです。
 
エクセルみたいな縦(行)と横(列)をもった表形式のデータをそのままテキストファイルに変換したもの、というイメージです。
 
エクセルが昔から広く利用されている理由は、表形式でデータを管理する場面が非常に多いからです。
 
しかしエクセルファイルをそのままワードプレスや業務システムなどに取り込むことはできません。
 
エクセルには、データだけでなく、アプリケーションを構成する様々なプログラムも含まれているためです。
 
しかし、CSVファイルはデータの部分だけをテキスト形式に直したものですので、汎用性があります。
 
だから、エクセルにはCSVで保存しCSVを読み込む双方向の機能が最初からついているんですね。
 
テキストファイルを読み込むことは、ワードプレスはもちろん、世の中の多くのシステムにとって容易なこと。
 
システムからシステムへ、データを移すときの媒介としてCSVは非常によく使われます。
 
上記【3】の方法は、
 
広く使える汎用的なデータ中継手段としてCSVに目を付けていることがポイントです。
 
アメブロワードプレスの仕様が変わることが合っても、CSVの仕様が変わることはまずないと言えます。
 
普遍性の高い仕組みをベースに、問題解決の方法を組み立てると、応用範囲がグッと広がるのです。