成功将Sablog-X数据导入Wordpress

在这里首先要感谢YanChenguang大哥sablog-x1.6到WordPress2.3.2数据转换程序

经验证同样适用于目前的最新版本Wordpress 2.5。

[php]
$val){
$_data = array();
$_data['category_parent'] = '-1';
$_data['category_description'] = $val['name'];
$_data['cat_name'] = $val['name'];

$new_cat_id = wp_insert_category($_data);
$categories[$cid]['new_cid'] = $new_cat_id;

}

foreach($articles as $aid => $article){
$arr = $article;
$_tmp_time = date('Y-n-j-H-i-s', $arr['dateline']);
list($arr['aa'], $arr['mm'], $arr['jj'], $arr['hh'], $arr['mn'], $arr['ss']) = explode('-', $_tmp_time);
$arr['edit_date'] = 1;
$arr['user_ID'] = $arr['uid'];
$arr['post_content'] = $arr['content'];
$arr['post_title'] = $arr['title'];
$arr['post_pingback'] = $arr['closetrackback'];
$arr['post_category'] = array($categories[$arr['cid']]['new_cid']);
$arr['tags_input'] = $arr['keywords'];
$arr['post_type'] = 'post';
$arr['post_status'] = $arr['visible'] == 1 ? 'publish' : 'draft';

$arr['comment_status'] = $arr['closecomment'] == 0 ? 'open' : 'close';
$arr['ping_status'] = $arr['closetrackback'] == 0 ? 'open' : 'close';
$arr['post_password'] = $arr['readpassword'];

$user_ID = $arr['uid'];
$_POST = $arr;
$ret = wp_write_post();

$articles[$arr['articleid']]['new_articleid'] = $ret;

}

foreach($links as $linkid => $linkdata){
$_data = array();
$_data['link_category'] = array(2);
$_data['link_visible'] = 'Y';
$_data['link_name'] = $linkdata['name'];
$_data['link_url'] = $linkdata['url'];
$_data['link_description'] = $linkdata['note'];
wp_insert_link($_data);
}

require_once('../wp-includes/comment.php');

foreach($comments as $cmtid => $cmtdata){
$_data = array();

$user_ID = 0;
$comment_post_ID = $articles[$cmtdata['articleid']]['new_articleid'];
$comment_author = $cmtdata['author'];
if(strpos($cmtdata['url'], '@')){
	$comment_author_email = $cmtdata['url'];
	$comment_author_url = '';
}else{
	$comment_author_url = $cmtdata['url'];
	$comment_author_email = '';
}
$comment_content = $cmtdata['content'];
$comment_type = '';

$commentdata['comment_author_IP'] = preg_replace( '/[^0-9., ]/', '', $cmtdata['ipaddress']);
$commentdata['comment_agent']     = $_SERVER['HTTP_USER_AGENT'];

$commentdata['comment_date']     = $cmtdata['dateline'];
$commentdata['comment_date_gmt'] = $cmtdata['dateline'];

$comment_author_email = $cmtdata['author'];
$commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'user_ID');
$comment_ID = wp_insert_comment($commentdata);

}

echo 'Finish!';
?>[/php]