Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更新所有帖子-wordpress_Wordpress - Fatal编程技术网

更新所有帖子-wordpress

更新所有帖子-wordpress,wordpress,Wordpress,我已经研究了线程并尝试在那里实现给定的代码示例 //code snippet to mass update all posts add_action('init','mass_update_posts'); function mass_update_posts(){ $all_posts = get_posts('numberposts='); $my_posts = get_posts( array('post_type' => 'post', 'numberpos

我已经研究了线程并尝试在那里实现给定的代码示例

//code snippet to mass update all posts
add_action('init','mass_update_posts');

function mass_update_posts(){

    $all_posts = get_posts('numberposts=');

    $my_posts = get_posts( array('post_type' => 'post', 'numberposts' => $all_posts ) );

    foreach ( $my_posts as $my_post ):

        wp_update_post( $my_post );

    endforeach;  
}
我将代码放在footer.php中,但它似乎没有任何作用?我错过了什么?最初我用的是

$my_posts = get_posts( array('post_type' => 'post', 'numberposts' => -1 ) );

但这也没用…

让我看看我是否理解您试图用这段代码做什么

首先,每次有人加载页面时,footer.php都会触发,因此您希望使用帖子本身的循环来批量更新所有帖子

你试图用这段代码做的事情大概有一百万个错误

  • 永远不要在页脚文件中添加操作,它们属于主题的function.php文件
  • 您的$all_posts变量可能为空,因为您正在发送一个函数,该函数需要一个参数数组和一个字符串()
  • $all_post不是整数,因为您在下一行使用它(get_post()函数返回WP_post对象的列表)
  • 你的循环遍历你所有的帖子,并用相同的帖子更新它们,没有任何改变,实际上什么也没有完成

  • 所以我想真正的问题是你到底想做什么?

    我在mysql数据库中手动编辑数据,只有在我“编辑”页面并按“更新”时才会显示在每页上。因此,更新是空的。我意识到将其放在页脚是愚蠢的,但这只是为了让我能够快速运行代码一次,更新帖子,然后删除它。我同意我不应该这么懒,做一些东西来安全地发射它,但我仍然是一个可湿性粉剂新手。。