wp insert post无限循环

vybvopom  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(708)

使用一个脚本从数据库中存储的数据自动在wordpress上创建文章,问题是它要创建成千上万个相同的文章,而不是一个。

$query = "SELECT * FROM `products` WHERE `proccessed`= 0 ORDER BY `product_id` ASC;"; // products
$result = mysqli_query($mysql_link, $query);

while ($row = mysqli_fetch_assoc($result))
{

                    $post_id = wp_insert_post(array(
        'post_type' => 'product',
        'post_title' => $row['name'],
        'post_content' => $row['description'],
        'post_status' => 'publish', // Can be draft, pending or any other post status
        'comment_status' => 'closed', // if you prefer
        'ping_status' => 'closed', // if you prefer

        ));

    if ($post_id)

        // Insert post meta (ACF Custom Fields)

echo $row['name'].' posted<br>';
}
58wvjzkj

58wvjzkj1#

您可能会根据查询得到一个结果。您总是基于产品id订单获取,但其中处理=0。。。假设您的表中只有2条记录。记录1是产品id 1,已处理=0。与处理的产品id 2相同=0。
您不断向表中添加记录,但原始记录1始终是要添加的记录,因为它从未更新为已处理状态。随后的每一项都会被处理。添加记录时,这些记录的处理状态是什么。由于我们没有通过任何更新或默认插入看到已处理状态,因此我只能假设数字默认值为零。那么,每一条记录现在是否都是合格的,因为它一直被添加到数据库中?
基于你的例子的简要背景。

相关问题