今回は、前回の記事で作成した MT バックアップ形式のファイルを使って、Wordpress サイトに記事をインポートする方法です。
と言っても単純にインポートするだけなら、すんなり行きますので+α もあります。
手順としては
- MTバックアップ形式データのインポート
- 画像ファイルの移行
- livedoor blog のエントリから、新サイトへの誘導 URL の作成
てな感じになります。
では、詳細を解説。
MTバックアップ形式データのインポート
インポートは簡単。
メニューの[管理] – [インポート] から、[Movable Type と TypePad] を選択して、MTバックアップ形式のファイルを選択すればOK。
私の環境だけかもしれませんが MTバックアップ形式で指定した ALLOW PING: 1 が反映されないようでした。
全記事でトラックバックを受け付けるようにしたい場合は、MySQL に取り込んだデータに対して以下の SQL 文を発行すればOK。
update wp_posts set ping_status = 'open' where ping_status != 'open'
画像ファイルの移行
GETHTMLW で取得したファイルには画像ファイルも含まれているので、それをすべて WordPress をインストールしたサーバに転送する。
画像ファイルが保存されている場所は image.blog.livedoor.jp\USERID\imgs 。
zip 等でまとめておいて転送すれば楽チンでしょう。
私は WordPress をインストールしたディレクトリの wp-content/uploads/imgs にすべて転送しましたが、この辺はご随意に。
その後、全記事の画像ファイルのリンク先を変更する。
これも MySQL に取り込んだデータに対して以下の SQL 文を発行すればOK。
update wp_posts set post_content = replace(post_content, 'http://image.blog.livedoor.jp/USERID/imgs', '自サイトのURL/wp-content/uploads/imgs')
livedoor blog のエントリから、新サイトへの誘導 URL の作成
さて、ここからがこの記事の肝です。
livedoor blog のエントリから、新サイトの同一エントリへ誘導するための URL を作成して、検索で livedoor blog 側に来たお客様を誘導するための URL を作りましょう。
まずは、エントリの URL を日付と記事名に基づく表示に変えましょう。
メニューの [各種設定] – [パーマリンク設定] で [一般的な表示] を、日付と記事名に基づく表示に変更します。
これで、各エントリの URL は /年/月/日/url encode されたエントリのタイトル/ てな感じになります。
次に、この URL にアクセスする方法ですが、テーマエディタでインデックスの先頭に以下のコードを追加します。
<?php if (array_key_exists('date',$_GET)) { $date = strtolower(mb_convert_encoding($_GET['date'],'UTF-8','EUC-JP,SJIS,eucjp-win,sjis-win')); if (array_key_exists("title",$_GET)) { $title = strtolower(mb_convert_encoding($_GET['title'],'UTF-8','EUC-JP,SJIS,eucjp-win,sjis-win')); } else { $title = ''; } $date = preg_replace('/([0-9]{2,4})年([0-9]{1,2})月([0-9]{1,2})日/i', '/$1/$2/$3', $date); $title = '/'.urlencode(str_replace('.', '', str_replace(' ', '-', $title))); if (function_exists('http_redirect')) { http_redirect($date.$title); } else { header('Location: '.$date.$title); } exit; } ?>
これで、新サイトに date, title パラメータ付きでアクセスした場合、該当のエントリにリダイレクトするようになります。
テンプレートに PHP 構文が書ける WordPress は、かなり幸せな環境ですね。
後は livedoor 側の個別テンプレートに以下のコードを追加してやって、再構築すれば完璧です。
移転しました。新サイトは<a href="新サイトのURL/?date=<$ArticleDate$>&title=<$ArticleTitle ESCAPE$>">こちら</a>
再構築する前に livedoor 側は、全エントリに対してコメント・トラックバックを受け付けないように設定しておくと、なお幸せかもしれませんね
とりあえず、移行に際してやったことは大まかにはコレくらいでしょうか。
shake さん、どもです。
専門用語ばかりなのでスルーしてください。(^^;;;
もとい君に描いてもらったやる気の無い犬も、結構お気に入りなのです。
こちらこそ、今後ともよろしくお願いします。
おぉっ?!お引越しされたんですね!
不勉強なもので、何がなにやらさっぱりなのですが、`;:゛;`(;゜ω゜` )
とにかくリンク先の変更をさせていただきました。
サイト名をもじって、「dogmap」とは洒落てますね。
今後ともよろしくです〜♪