首页 » elementor » wordpress » 如何在 WordPress 中复制页面或帖子 如何在 WordPress 中复制页面或帖子作者: qmk / wordpress / 发表评论 当您只需单击几下即可完成手动重复性任务时,不要将时间浪费在这些任务上。了解如何复制页面和帖子,让自己腾出时间来处理更重要的任务。 自定义字段和其他元数据。 在这篇文章中,我们将为您提供一个全面的指南,了解如何使用 100% 免费的解决方案完全复制 WordPress 页面、帖子等。 到最后,您将能够通过单击按钮复制您网站上的任何内容——让我们开始吧。 目录 如何在 WordPress 中复制帖子或页面:三种方法如何使用插件复制 WordPress 页面Yoast重复帖子重复帖子WooCommerce如何使用编辑器复制 WordPress 页面块编辑器(古腾堡)元素如何使用代码手动复制 WordPress 页面 使用完整的网站工具包进一步加速您的 Web 创建过程 如何在 WordPress 中复制帖子或页面:三种方法 您可以使用三种主要方法来复制 WordPress 页面、帖子或其他自定义帖子类型: 插件——复制帖子或页面的最简单方法是使用众多专用插件之一(其中大部分是免费的)。编辑器– 根据您想要复制内容的彻底程度,如果您只关心复制内容和设计,您可能可以只使用编辑器。手动代码——对于自己动手的人,您可以将一些自定义代码添加到您的子主题的 functions.php 文件中。 我们将介绍所有三种方法——让我们来看看它们…… 如何使用插件复制 WordPress 页面 有很多插件可以轻松复制您网站上的帖子、页面或其他内容。 如果您有 WooCommerce 商店,WooCommerce 包含自己的内置功能来复制产品 – 更多内容如下。如果您不这样做,您会在 WordPress.org 上找到许多免费插件,包括以下内容: Yoast重复帖子重复帖子重复页面后复印机重复页面和帖子 除了 WooCommerce,我们还将向您展示它如何与上面列表中的两个免费插件一起使用: Yoast Duplicate Post,因为它非常易于使用,并包含一个独特的“重写和重新发布”功能,非常适合更新现有内容。重复发布,因为它可以让您在某些区域进行更精细的控制。 这两个插件都是免费的,我们还对它们进行了测试,以确保它们可以与 Elementor 设计和使用原生 WordPress 编辑器构建的内容一起使用。我们想象上面的所有其他插件也可以与 Elementor 一起使用,尽管我们没有专门测试它们。 Yoast重复帖子 首先,让我们看一下 Yoast Duplicate Post。如果您只是想要一种快速简便的方法来复制帖子、页面或任何其他自定义帖子类型,则此插件非常有用。 除了让您克隆内容外,它还包括一个独特的重写和重新发布功能,可帮助您更新现有内容。从本质上讲,此功能允许您复制内容以进行更改,然后在您想要进行更改时将复制的版本“合并”回原始版本。 首先,从 WordPress.org 安装并激活免费的 Yoast Duplicate Post 插件。 现在,您有几种不同的方法来复制内容。 首先,您可以转到主帖子或页面列表。如果您将鼠标悬停在列表中的某个项目上,您将看到三个选项: 克隆 –复制内容并将浏览器选项卡保留在帖子/页面列表中。新草稿– 复制内容并打开复制内容的编辑器,以便您可以立即开始工作。重写和重新发布——正如我们上面讨论的,这是更新旧内容的有用功能。主要区别在于,一旦您完成,它将允许您将内容合并回原始帖子。 最简单的方法是单击Clone。然后,您会在列表中看到重复内容的新草稿条目。该插件将用“自定义草稿”通知标记它,让您知道它是重复版本: 重复帖子 Duplicate Post 提供与 Yoast Duplicate Post 相同的基本功能,因为它可以轻松快速地复制帖子或页面。 这个插件相对于 Yoast Duplicate Post 的几个优点是: 让您一键复制帖子/页面多次。例如,您可以告诉它创建四个重复的副本。让您更好地控制在帖子之间复制的内容。包括扫描您的站点以查找重复内容的功能,这对于快速查找重复内容很有用。允许您在不同的WordPress 多站点网络站点之间复制内容,包括子域上的站点(尽管此功能需要19.98 美元的高级插件)。为您提供将帖子转换为页面的选项,反之亦然(也需要高级版本)。 如果您不需要这些功能,我们建议您坚持使用 Yoast Duplicate Post,因为它更受欢迎并且可以完成工作。但是,如果您确实想要这些功能,这是另一个值得考虑的可靠选择。 首先,从 WordPress.org 安装并激活免费的 Duplicate Post 插件。一旦你激活它,它就会开始工作。 转到帖子/页面列表并将鼠标悬停在要复制的内容上。您将看到Copy的新选项。如果将鼠标悬停在上面,您将展开一些额外的设置以选择要复制的数量以及要使用的设置(稍后会详细介绍): 与 Yoast Duplicate Post 一样,您还可以使用复选框和批量操作下拉菜单批量复制多个帖子。 要配置插件的设置,您可以转到WordPress 仪表板中的新复制和删除帖子选项卡。您可以在此处配置所有设置,包括: 要复制什么内容。谁可以复制内容。启用复制的自定义帖子类型。等等。 WooCommerce 如果您使用 WooCommerce创建电子商务商店,WooCommerce 包含自己的内置功能来复制产品 – 无需安装单独的插件。 要复制产品,请转到仪表板中的产品区域。然后,将鼠标悬停在要复制的产品上并单击复制: 如何使用编辑器复制 WordPress 页面 如果您主要关心复制帖子或页面的内容/设计,那么由于一些内置的编辑器功能,没有插件可能会很好。 在本节中,我们将向您展示如何快速复制您使用本机块编辑器 (Gutenberg) 或 Elementor 创建的设计。 需要注意的是,这两种方法都只会复制内容和设计——您需要手动重新创建任何重要的元数据,例如标题、类别、标签、自定义字段等。 块编辑器(古腾堡) 要从块编辑器中快速复制内容,请首先打开要复制的帖子或页面的编辑器。 单击右上角的三点图标以展开菜单。然后,选择复制所有内容的选项: 现在,创建一个新帖子或页面。然后,单击编辑器并粘贴内容。您可以: 使用键盘快捷键,如Ctrl + V或Cmd + V。右键单击并选择粘贴。 您应该在编辑器中看到原始内容的精确副本。但是,您需要确保手动添加标题、类别、标签等。 元素 注意–您可以使用我们上面提到的插件复制使用 Elementor 构建的页面或帖子。但是,如果您主要关心复制 Elementor 帖子/页面的设计(而不是其他元数据,如作者和类别),您可以使用 Elementor 的模板系统来做到这一点。 我们有关于如何复制 Elementor 页面的指南,但这是基本思想。 首先,您可以从Elementor 编辑器界面将设计保存为模板: 然后,您可以创建新帖子或页面并从 Elementor 模板库插入模板。 如果您想复制的不仅仅是一个页面,您还可以使用 Elementor 的网站工具包功能来导出/导入完整的网站设计。通过导入您自己的网站工具包复制您的完整网站设计 Elementor 导入/导出功能允许您在几秒钟内导入自己的作品并创建一个新网站。只需创建可用于多个项目的蓝图,或重复使用您最喜欢的 Web 创作。然后,导出整个网站并将其应用于您的其他项目。 您可以使用自己的创作或从我们的设计师制作的网站套件库中进行选择。只需将其应用到您的网站,添加内容,并使其成为您自己的。 如何使用代码手动复制 WordPress 页面 如果您更喜欢自己动手 (DIY) 方法,您还可以使用一些自定义代码创建自己的重复页面功能。除了消除在您的站点上安装另一个插件的需要之外,此方法不会增加插件路由的任何好处。 但是,如果避免使用其他插件对您很重要,那么这种方法很好,并且可以与常规编辑器内容和 Elementor 一起使用。 要使用此代码,您需要将其添加到主题的functions.php文件或代码管理插件(如Code Snippets )中。如果将其添加到functions.php文件中,请确保使用子主题。 $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* * if post data exists, create the post duplicate */ if (isset( $post ) && $post != null) { /* * new post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => 'draft', 'post_title' => $post->post_title, 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post( $args ); /* * get all current post terms ad set them to the new post draft */ $taxonomies = get_object_taxonomies($post->post_type); // returns array of taxonomy names for post type, ex array("category", "post_tag"); foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } /* * duplicate all post meta just in two SQL queries */ $post_meta_infos = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id"); if (count($post_meta_infos)!=0) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) "; foreach ($post_meta_infos as $meta_info) { $meta_key = $meta_info->meta_key; if( $meta_key == '_wp_old_slug' ) continue; $meta_value = addslashes($meta_info->meta_value); $sql_query_sel[]= "SELECT $new_post_id, '$meta_key', '$meta_value'"; } $sql_query.= implode(" UNION ALL ", $sql_query_sel); $wpdb->query($sql_query); } /* * finally, redirect to the edit post screen for the new draft */ wp_redirect( admin_url( 'post.php?action=edit&post=' . $new_post_id ) ); exit; } else { wp_die('Post creation failed, could not find original post: ' . $post_id); } } add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' ); /* * Add the duplicate link to action list for post_row_actions */ function rd_duplicate_post_link( $actions, $post ) { if (current_user_can('edit_posts')) { $actions['duplicate'] = '<a>ID, basename(__FILE__), 'duplicate_nonce' ) . '" title="Duplicate this item" rel="permalink">Duplicate</a>'; } return $actions; } add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 ); 默认情况下,该代码段启用帖子和页面的复制。如果您只想为其中一个启用它,您可以删除代码片段底部的page_row_actions或post_row_actions过滤器。 通过复制页面和帖子来改进您的 Web 创建过程 当您在 WordPress 网站上工作时,能够复制 WordPress 页面、帖子或其他帖子类型非常方便。 在这篇文章中,我们分享了可用于复制内容的三种不同方法。 对于大多数人来说,完全克隆帖子或页面的最简单方法是通过免费的Yoast Duplicate Post 插件。它立即开始工作,并与块编辑器 (Gutenberg)、Elementor 和 Classic TinyMCE 编辑器一起使用。它还适用于所有帖子类型,从页面到帖子以及您可能正在使用的任何自定义帖子类型。 如果您有 WooCommerce 商店,您还可以使用 WooCommerce 的内置功能来复制产品。或者,如果您不想安装其他插件,可以向您的站点添加一些自定义代码。 最后,如果您只需要复制帖子的内容/设计,您可以使用 Elementor 的模板系统或使用块编辑器的选项来复制所有内容。