所以我有这个非wordpress数据库,我需要将所有帖子放在Wordpress数据库中,为此我使用这个脚本,但只从11231上传了1037行。
这是剧本。
<?php
ini_set('max_execution_time', 300);
require("connect.php");
$conn = mysqli_connect("127.0.0.1","root","psswd");
mysqli_select_db($conn,"db_test");
$results = mysqli_query($conn,"SELECT * FROM test");
$i = 0;
while ($row = mysqli_fetch_array($results,MYSQL_ASSOC)) {
$post = array();
$post['post_status'] = 'publish';
$post['ID']=$row['idPost'];
$post['post_date']=$row['date'];
$post['post_date_gmt']=$row['date'];
$post['post_content']=$row['body'];
$post['post_title']=$row['title'];
$posts[$i] = $post;
$i++;
}
mysqli_free_result($results);
mysqli_close($conn);
require('C:\xampp\htdocs\test\wordpress\wp-load.php');
foreach ($posts as $post) {
wp_insert_post($post);
}
?>
它会显示任何错误。
我尝试从CMD,Firefox和Chrome中执行脚本。
这是我到目前为止所尝试的:
·添加 ini_set('max_execution_time',300); 。
·添加 set_time_limit(0); wp_insert_post()函数所在的位置。
·在 my.ini 中更改 max_allowed_packet 大小。
如果我们无法完成这项工作,我认为我可以执行INSERT TO,但是这样就不会生成URL。
谢谢。
答案 0 :(得分:0)
尝试将第二个参数设置为true wp_insert_post($post,true)
。你可以看到任何错误。遇到了。