Serene Bach からWordPressに移動しました。 | 今日もだらだら、読書日記。

Serene Bach からWordPressに移動しました。

記事件数が着々と増えてきたこともあり、
↓のような記事の存在がちょっと怖くなってきたのでWordpressへ移行しました。

SBからMTへの移行がちらほら - The blog of H.Fujimoto

この記事の情報によると、不具合が起きるのは1000件前後になってからということで、まだあと1年くらいは大丈夫なのですが、SereneBach3.0の正式版が一向に見えてこない現状と、うちの記事の文字数が全体的に多いことを考えるとちょっと恐ろしく。他にも以前からやりたいと思っていた改造がWPの方がやりやすいらしいというのもあり。

気合でURLは変えずに移行したので、リンクURL変更の必要はありませんが、RSSのURLが変更となっておりますので、各種リーダー等にRSSを登録されている人はURL変更を宜しくお願い致します。

以下、SereneBach→Wordpress移行時の覚書。


移行に当たっては、以下のエントリを参考にしたのですが、この記事で書かれているままの状態で移行するとかなり多くの落とし穴が……

SereneBachからWordPressへの準備過程。(Plug-in色々) - Planting Field Web Log

1)記事の削除をしている場合
うちの場合、更に1つ前のさくらブログからSereneBachに移行した際に何度か記事をインポート失敗している為、記事番号がeid246.htmlから始まっていました。

この状態でインポートをすると、eid246.htmlがeid1.htmlにとして読み込まれ、そこから順に705件分の記事が記事IDを振り分けられる為、正しく「同じURLで」移行を完了する事が出来ません。また、一度書いた記事を削除したりした場合も削除した部分の欠番を埋めて番号が振られてしまうため、それ以降の記事番号が全部ズレます。

今回の移行の場合は、私は適当に記事を1つ作ってからphpmyadminでIDを245に変更して、246からデータをインポートさせ、削除した記事はダミーの空記事データを作って埋めるというかなりアクロバティックな方法で対処しました。ただ、ここでもデータが完全に一緒のデータを作るとWPは同じ記事とみなして欠番詰めを決行してしまうのでタイトルデータを全部違うものにする必要性があります……ぐったり。

2)記事の投稿日時を弄ってる場合
これ意外に気付きにくいんじゃないでしょうか…。
例えば特定の記事を一定期間トップにおいておきたい為に、1ヶ月先の日時でポストしてその間に他の記事をポストしていたとします。この場合にSereneBachからデータをインポートすると、SereneBachは記事ID順ではなく、記事の投稿日時順でデータを吐き出してしまうのです

この状態で実際WPで移行すると投稿日時順に記事IDを振りなおすため、本来の記事を作成した日時?こちらで指定した投稿日時の間にポストされた記事が全てズレます。しかも、1と違って欠番を埋めるわけではないので、ぱっと見ではまるで正しくインポートされたように見えてしまうのが地味に痛い。

私の場合はインポートする前にSereneBachの管理画面の記事リストから記事タイトル・ID・投稿日時をコピペして一覧表にし、IDと投稿日時の順番がズレている記事をみつけて片っ端から日時指定を正しい順番になるよう直していったのですが……正直物凄い面倒くさかったです。(とりあえずタブ区切りデータにしてEXCELに貼り付け(日時の部分は日時データとして貼り付け)、日時順で並び替えしてその順番で仮IDを振り、他のセルに「仮ID-記事ID」を計算させて差異が出るデータを抽出、差異が出ないようSereneBach側のデータを変更して……というのを3回くらいやりました。正直やり方が上手いとはお世辞にも上手いと思ってないのでこの辺の説明がわからないと言われても解説できません。)

とりあえず結論としては、これやるなら素直にURL変更した方が絶対いいってことでしょうか。
なんか自棄になって無理やりデータを直してしまいましたが、試行錯誤しながらやったらデータの移動だけで1週間がかりでした……軽く死んだ。