在多站点环境中将帖子从一个博客复制到另一个博客

时间:2013-04-23 作者:Xing Lee

我正在为post创建一个插件。php页面,用户可以在其中选择(一个或多个)博客,并复制所选博客中的帖子内容、标题、作者、类别。复制的帖子将是原始帖子的子帖子,现在原始帖子将是父帖子。

我想知道是否有任何WP功能可以直接将帖子复制到其他多站点博客,或者什么功能是最好的。

2 个回复
最合适的回答,由SO网友:dannepanne 整理而成

要将帖子从一个博客复制到另一个博客,可以执行以下操作:

function copy_post_to_blog($post_id, $target_blog_id) {

   $post = get_post($post_id, ARRAY_A); // get the original post

   $post[\'ID\'] = \'\'; // empty id field, to tell wordpress that this will be a new post

   switch_to_blog($target_blog_id); // switch to target blog

   $inserted_post_id = wp_insert_post($post); // insert the post

   restore_current_blog(); // return to original blog
}

SO网友:Misha Rudrastyh

您的解决方案很好,但它不包括分类法和post Meta,因此我建议您签出此解决方案https://rudrastyh.com/wordpress-multisite/move-posts-between-blogs.html

所以,首先我们得到所有的post数据get_post($post_id, ARRAY_A); 所有帖子的类别和帖子元,然后我们切换到正确的博客switch_to_blog($target_blog_id); 并创建新帖子并更新其所有数据+术语+帖子元。然后restore_current_blog();

结束

相关推荐

仅在wp-admin中显示死亡白屏

我可以登录该网站,但登录后,我在wp admin中看到一个白色屏幕。我仍然可以访问该网站,它显示我已使用每个页面顶部的工具栏登录,但每当我进入wp admin时,都会遇到一个白色屏幕。我尝试过重命名themes和plugins文件夹,甚至删除了这两个文件夹。我尝试将php内存限制提高到128M,但仍然没有成功。有什么建议吗?如果我必须重新安装Wordpress,我如何才能不丢失已经存在的一切?编辑:我也打开了调试,但仍然没有收到任何错误、警告或通知。