require('wp-blog-header.php')在循环中不起作用

时间:2012-05-26 03:32:51

标签: wordpress function loops external

我正在尝试使用外部php文件中的wp_insert_post。如果没有循环,此文件可以正常工作。我花了很长时间,但我无法搜索任何类似的信息。

<?php

require('wp-blog-header.php');
$tmpstr = array(
          'ID' => 1,
          'post_title' => $title,
          'post_content' => $post content,
          'post_status' => 'publish',
          'post_author' => '1',
          'post_type' => $type
       );
wp_insert_post($tmpstr);
?>`

然而,当我放一个循环时,

<?php
for ($i=0;$i<10,$i++) {
require('wp-blog-header.php');
$tmpstr = array(
          'ID' => 1,
          'post_title' => $title[$i],
          'post_content' => $post content[$i],
          'post_status' => 'publish',
          'post_author' => '1',
          'post_type' => $type
        );
   wp_insert_post($tmpstr);
}
?>

它只插入1次进入mysql数据库,然后停止 我试过更改require('wp-blog-header.php');要求('/ path / to / wp-blog-header.php');但它仍然无法解决我的问题。如果我注释掉wp_insert_post和require('wp-blog-header.php');并添加echo $ post_content [$ j]; echo $ post_title [$ j];所有值都在我的浏览器中正确显示

任何人都可以帮助我让它循环10次,这样它可以插入10个条目吗? 提前谢谢!

2 个答案:

答案 0 :(得分:2)

for ($i=0;$i<10,$i++) {
               ^

ERROR!必须是:

for ($i=0;$i<10;$i++) {
               ^

答案 1 :(得分:2)

你经常需要每个循环的文件。永远不要那样做。把要求放在循环之外。如果你把它放在循环中,PHP会错误地说该函数已被定义。

<?php
require('wp-blog-header.php');
for ($i = 0; $i < 10; $i++) {
$tmpstr = array(
          'ID' => 1,
          'post_title' => $title[$i],
          'post_content' => $post content[$i],
          'post_status' => 'publish',
          'post_author' => '1',
          'post_type' => $type
        );
   wp_insert_post($tmpstr);
}