MTからGeeklogへサイトを移行開発
- 2010/08/31 22:17 JST
- 表示回数 4,037
MTからGeeklogへサイトを移行開発中です。
拡張フィールドを使っているので通常のMT形式への書き出しでは本体を書き出しできず、Geeklogで多言語形式でそのまま取り込めるよう、テンプレート作成機能でMT形式のファイルを書き出しています。
テンプレートは、以下のようにして・・・
lastn="2000" としたことで、最大2000ブログまで連続して書き出してくれるってわけで。
テンプレート機能、便利!
Geeklogにするといろいろもっさり感がなくなって、多言語サイトもつくりやすくなりますから、リニューアルたのしみです。
今回、移行は、mystral-kkさんのphpblock_mt2geeklog.phpが大活躍です。
さらに、記事IDを受け渡したいので、MTのテンプレートで、記事IDを STORY ID で渡します。そのとき、phpblock_mt2geeklog.phpで、以下の行を追加して記事IDを受渡してもらいます。もしこれを追加しなければ自動生成IDになってしまいます。
$sid = strip_tags( $article['META']['STORY ID'] );
if ($sid == '') $sid = getUniqueSid();
TOPに表示するかどうか、frontpageは常にONですが、これをOFFにするには590行あたり、以下のようにfrontpage の値を固定でわたすとよいです。
if ($hasTrackback) {
DB_query("INSERT INTO {$_TABLES['stories']} (sid, uid, draft_flag, tid, date, title, introtext, bodytext, comments, trackbacks, commentcode, trackbackcode, expire, postmode, owner_id, group_id, frontpage) VALUES ('$sid', $uid, $draft_flag, '$tid', '$unixdate', '$title', '$introtext', '$bodytext', $comments, $trackbacks, $commentcode, $trackbackcode, '$expire', '$postmode', $owner_id, $group_id, 0)");
} else {
DB_query("INSERT INTO {$_TABLES['stories']} (sid, uid, draft_flag, tid, date, title, introtext, bodytext, comments, commentcode, expire, postmode, owner_id, group_id, frontpage) VALUES ('$sid', $uid, $draft_flag, '$tid', '$unixdate', '$title', '$introtext', '$bodytext', $comments, $commentcode, '$expire', '$postmode', $owner_id, $group_id, 0)");
}