曾经有人让我将其MySQL数据导入WordPress中,通过使用WordPress API很快就能实现。这里我跟大家介绍下整个过程,希望对大家有帮助。
这种情况下对旧数据库的处理非常简单,仅需修改下列名因为它们最初是荷兰语。
首先,链接到旧数据库:
require("include/connect.inc");
$conn = mysql_connect($DBHost,$DBUser,$DBPassword);
mysql_select_db($DBName,$conn);
这里包含变量的文件include/connect.inc 用来链接到数据库。
接着查询新数据库:
$results = mysql_query("SELECT * FROM news",$conn);
为了在导入数据后文章能够立刻发表,得将 post_status 设置为'publish'。另外我还设定了文章的类别(第四组)。很多时候你需要将原来的类别归入到新的一类,这也很简单。最后,将日期的格式从dd/mm/yyyy 转为WordPress能理解的格式,然后将旧数据库中的字段名更新:
$i = 0;
while ($row = mysql_fetch_array($results,MYSQL_ASSOC)) {
$post = array();
$post['post_status'] = 'publish';
$post['post_category'] = array(4);
$post['post_date'] = date('Y-m-d H:i:s',strtotime($row['newsitem_date']));
$post['post_title'] = $row['newsitem_title'];
$post['post_content'] = $row['newsitem_content'];
$posts[$i] = $post;
$i++;
}
我现在就已经建立了一个$posts 数组,我可以马上就在WordPress中插入文章,但是以防两个数据库之间有什么冲突, 先十方界国际关闭链接:
mysql_free_result($results);
mysql_close($conn);
现在开始装载WordPress(假设你从WordPress根目录运行此导入的脚本):
require('./wp-load.php');
最后循环读取日志并将他们插入数据库中:
foreach ($posts as $post) {
wp_insert_post($post);
}
大功告成!
* 版权声明:作者WordPress啦! 转载请注明出处。
发表新评论