WordPress duplicate page: How to clone pages in WordPress? (+5 free plugins)

Duplicate pages in WordPress
Table of Contents

WordPress duplicate pages and related data, such as SEO data, images, custom fields, etc. is a method used by website managers to save time. Clone page WordPress is especially useful when the template of the pages you want to publish on the site is the same, and it helps you copy the page format, text and image content, and other data to a new page with one click.

There are simple ways to duplicate pages in WordPress:

  1. Clone WordPress page in the Gutenberg editor
  2. Duplicate pages in the WordPress Classic editor
  3. WordPress duplicate pages by Coding
  4. Using the WordPress duplicate pages plugin

In this post, we will review the methods for free WordPress duplicate pages with and without the plugin, as well as introduce the best WordPress clone page plugin that can help you better manage the pages and posts on your website.

Why do you need WordPress duplicate page?

There are so many reasons that make you duplicate WordPress pages. For example, If you have already designed a fabulous landing page for one of your products, it is very common to use it for a new product in the same category. You can easily duplicate a page in WordPress, apply some minor changes, and publish it to be used in product marketing campaigns.

Another reason for cloning a WordPress page is to simplify the designing process of your website. If you have a bug website with too many pages, it is not necessary to design pages individually. You can simply duplicate page in WordPress and speed up your design process.

You can also save time when redesigning your website or updating your content by duplicate page WordPress.

In conclusion, learning how to duplicate pages in WordPress could be useful in different ways when you are working on a WordPress site.

How to duplicate a page in WP with and without plugin?

If you want to get deep insight into how to duplicate page in WordPress, follow our step by step guide for the most useful methods to help you to duplicate WordPress page.

Method 1: Duplicate a page in WordPress manually

Clone page WordPress without plugin is not a complicated task. It is easily possible to copy-paste the content of an old page to a new one in both classic and Gutenberg editors. 

Let’s review a step-by-step guide to duplicate pages in WordPress without a plugin.

Clone page WordPress in the WordPress Gutenberg editor

If you want to use a WordPress posts bulk editing plugin as one of the best WordPress page duplicators:

Step 1: Install the WordPress posts/pages bulk edit plugin

  1.  Navigate to WordPress Dashboard > Pages > All pages.
select all section in WordPress pages menu
  1. Click on the page title in the table.
Click on the page title in the WordPress table

Step 2: Copy all content of the page

  1. Press the Hamburger button on the top right corner of the screen.
  2. Click on Copy All Blocks.
Copy all content of the WordPress page

Step 3: Create a new page and paste the contents 

  1. Back to WordPress Dashboard > Pages and click on Add new page.
  1. In the new page, insert a Title (1), then right-click on the first block and choose Paste (2).
  1. Finally, click on the Publish button (3).
Create a new page and paste the contents in WordPress

Duplicate pages in the WordPress classic editor

By following the instructions below, you can duplicate pages in the WordPress classic editor very fast:

Step 1: open your desired page in classic editor – as described in the previous section.

Step 2: Copy the text editor content

  • Click on the text editor tab on top of the content box.
  • Press CTRL+A to select all text in the box.
  • Press Ctrl +C to copy all content.
Copy the text editor content for desired page in WordPress classic editor

Step 3: Paste the content in the text editor of a new page

  • Create a new page as we described before.
  • Open the text editor.
  • Press Ctrl + V to paste all content in this box.
Paste the content in the text editor of a WordPress new page
  • Publish the page by pressing the Publish button.
Publish the WordPress page by pressing the Publish button

That’s it. You have successfully used Gutenberg and classic editors to duplicate pages in WordPress. 

However, as you may notice, there are no tools for free WordPress duplicate pages multiple times. So, this straightforward method is suited for cloning a few numbers of pages. If you need to bulk duplicate some WordPress pages multiple times, we recommend you use the WordPress clone page plugin.

Method 2: Free WordPress duplicate pages by coding

Another method for WordPress duplicate pages without plugins is inserting code to “functions.php”. There are two main methods that you can use to access the functions.php file:

  • FTP Client, which is available by going to WordPress Root > Wp content > Themes > Current Themes
  • WordPress Theme Editor, which is available in WordPress Dashboard > Appearance > Theme > Themes function

Before inserting the below code into your WordPress site consider the followings:

  1. You need to have the username and password of your host to log in FTP client software. 
  2. It is vital to back up your site to restore your data in case of any problems.
  3. It is recommended to create a Child theme and then insert the code in the functions.php.
  4. Never use this method if you don’t have any experience in coding.

Now you can just copy and paste the below code to the functions.php file to duplicate the page in WordPress without a plugin.

/**
 * @snippet  Duplicate posts and pages without plugins
 * @author   Misha Rudrastyh
 * @url      https://rudrastyh.com/wordpress/duplicate-post.html
 */

// Add the duplicate link to action list for post_row_actions
// for "post" and custom post types
add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 );
// for "page" post type
add_filter( 'page_row_actions', 'rd_duplicate_post_link', 10, 2 );


function rd_duplicate_post_link( $actions, $post ) {

	if( ! current_user_can( 'edit_posts' ) ) {
		return $actions;
	}

	$url = wp_nonce_url(
		add_query_arg(
			array(
				'action' => 'rd_duplicate_post_as_draft',
				'post' => $post->ID,
			),
			'admin.php'
		),
		basename(__FILE__),
		'duplicate_nonce'
	);

	$actions[ 'duplicate' ] = '<a href="' . $url . '" title="Duplicate this item" rel="permalink">Duplicate</a>';

	return $actions;
}

/*
 * Function creates post duplicate as a draft and redirects then to the edit post screen
 */
add_action( 'admin_action_rd_duplicate_post_as_draft', 'rd_duplicate_post_as_draft' );

function rd_duplicate_post_as_draft(){

	// check if post ID has been provided and action
	if ( empty( $_GET[ 'post' ] ) ) {
		wp_die( 'No post to duplicate has been provided!' );
	}

	// Nonce verification
	if ( ! isset( $_GET[ 'duplicate_nonce' ] ) || ! wp_verify_nonce( $_GET[ 'duplicate_nonce' ], basename( __FILE__ ) ) ) {
		return;
	}

	// Get the original post id
	$post_id = absint( $_GET[ 'post' ] );

	// And all the original post data then
	$post = get_post( $post_id );

	/*
	 * if you don't want current user to be the new post author,
	 * then change next couple of lines to this: $new_post_author = $post->post_author;
	 */
	$current_user = wp_get_current_user();
	$new_post_author = $current_user->ID;

	// if post data exists (I am sure it is, but just in a case), create the post duplicate
	if ( $post ) {

		// 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( get_post_type( $post ) ); // returns array of taxonomy names for post type, ex array("category", "post_tag");
		if( $taxonomies ) {
			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
		$post_meta = get_post_meta( $post_id );
		if( $post_meta ) {

			foreach ( $post_meta as $meta_key => $meta_values ) {

				if( '_wp_old_slug' == $meta_key ) { // do nothing for this meta key
					continue;
				}

				foreach ( $meta_values as $meta_value ) {
					add_post_meta( $new_post_id, $meta_key, $meta_value );
				}
			}
		}

		// finally, redirect to the edit post screen for the new draft
		// wp_safe_redirect(
		// 	add_query_arg(
		// 		array(
		// 			'action' => 'edit',
		// 			'post' => $new_post_id
		// 		),
		// 		admin_url( 'post.php' )
		// 	)
		// );
		// exit;
		// or we can redirect to all posts with a message
		wp_safe_redirect(
			add_query_arg(
				array(
					'post_type' => ( 'post' !== get_post_type( $post ) ? get_post_type( $post ) : false ),
					'saved' => 'post_duplication_created' // just a custom slug here
				),
				admin_url( 'edit.php' )
			)
		);
		exit;

	} else {
		wp_die( 'Post creation failed, could not find original post.' );
	}

}

/*
 * In case we decided to add admin notices
 */
add_action( 'admin_notices', 'rudr_duplication_admin_notice' );

function rudr_duplication_admin_notice() {

	// Get the current screen
	$screen = get_current_screen();

	if ( 'edit' !== $screen->base ) {
		return;
	}

    //Checks if settings updated
    if ( isset( $_GET[ 'saved' ] ) && 'post_duplication_created' == $_GET[ 'saved' ] ) {

		 echo '<div class="notice notice-success is-dismissible"><p>Post copy created.</p></div>';
		 
    }
}

Method 3: Use WordPress duplicate pages using the WordPress post/page bulk edit plugin

WordPress duplicate pages are very simple if you use the WordPress bulk posts editing plugin because every tool you need is available in a user-friendly interface. This plugin is not only the fastest way to copy multiple posts or pages at once, but it also allows you to bulk edit different data after cloning pages.

Let’s review the step-by-step guide for clone page WordPress with this plugin.

Step 1: Install the best WordPress page duplicator

If you want to use a WordPress posts bulk editing plugin to duplicate pages, first you need to download and install it on your WordPress website. Then, you have access to the main page of the plugin by navigating to:

WordPress Dashboard > iT bulk editing > WP posts

select WP Posts section in WordPress Bulk Editing menu

You will see a toolbar on top of a table on this page. To instruct the plugin to display a list of pages in the table, you need to press the Post Type combo box on the Toolbar and select Page from the list.

select page in post type combo box for Post Bulk Editing Plugin

Step 2: Filter desired pages in WordPress posts bulk editing plugin

The next step for WordPress duplicate pages is to filter your required pages by using a comprehensive Filter Form designed in our plugin. 

To open the form, click on the Filter icon of the Toolbar:

Filter desired pages in WordPress posts bulk editing plugin

Then open one of the tabs in the filter form and set some filters in the items categorized in each tab:

Customization general tab in Bulk Editing filter form

By pressing Get Posts, you can see a list of filtered pages in the table, and you are ready to duplicate them.

Step 3: Clone the desired pages 

To use the free WordPress duplicate pages tool in this plugin, first mark some pages in the list. Then press the Duplicate button in the toolbar:

Mark WordPress pages and click duplicate button in toolbar

Now a popup is prompted to the screen, and you can insert how many times you want to clone the selected pages:

select amount duplicate to WordPress pages

After inserting the number, click on Start Duplicate button to see the WordPress duplicate page as draft.

WordPress post bulk edit

Here, you can find some examples of duplicating pages with the WordPress clone page plugin.

Example 1: Duplicate all WordPress pages created by a specific author at once and save them as draft

If you want to duplicate pages published by a specific author, try the following steps:

  • Go to Filter Form and locate the By Author field in the General tab.
  • Open the dropdown list of the By Author field and choose the name of the author – like demounic in this example.
  • Press the Get Posts button.
select by author field in filter form
  • Mark the checkbox next to ID to select all pages in the table.
  • Press the Duplicate button in the toolbar.
select checkbox all ID and click duplicate button in toolbar
  • Write 1 in the duplicate pop-up. 
  • Press the Start Duplicate button.
Write 1 in the WordPress duplicate pop-up

Now, you have successfully duplicated posts, and you can use the Bulk Edit form to change the page status to draft, by the below instructions:

  • Mark the duplicated pages in the list.
  • Click on the Bulk Edit button.
mark duplicated pages and click bulk edit button in toolbar
  • Go to the Date & Type tab.
  • Locate Post status and open the combo box in front of it.
  • Choose Draft from the list.
  • Press the Do Bulk Edit button.
select post status field in date type tab

Now, you have successfully WordPress duplicate page as draft.

Example 2: WordPress duplicate pages published in the last month 3 times

If you need to duplicate pages published in the last month 3 times, try to:

  • Open the Date& Type tab in the Filter Form.
  • Find the Date Published field and set Date from and Date to fields by using the built-in calendar.
  • Press the Get Posts button.
Customization Date & Type tab in Bulk Editing filter form
Customization Date & Type tab in Bulk Editing filter form
  • Mark the filtered pages in the table.
  • Click on the Duplicate button.
  • Insert 3 in the pop-up box.
  • Press the Start duplicate button.
write 3 in duplicate pop up in WordPress filtered pages

As you can see in the picture, the selected page has been cloned 3 times as we expected.

result cloned filtered pages in WordPress

Other duplicate pages WordPress plugin

There are so many WordPress duplicate page plugins, you can use to duplicate WordPress pages. Some of them let you simply create a copy from one page, and some of them have more features for duplicating custom fields like Titles, Comments, featured images, and other data. Here, you can find helpful information about the most popular duplicate pages WordPress solutions.

WordPress duplicate page plugin 

The WordPress duplicate page plugin allows you to clone your pages, posts, and custom posts with one click. It also provides an option for admin user to limit the access of different user roles for duplicating WordPress pages, 

Key Features

  • Save new duplicated pages as draft, private, public, or pending based on your need.
  • Filter to show duplicate page links in post types.
  • Redirect the clone link.
  • Change duplicate post link title, add post prefix/suffix.

How to duplicate a WordPress page with WordPress page duplicate plugin?

  • After activation, Go to Settings Tab > Select to Duplicate Page Settings Menu > Create New Post/Page or Use old.
  • Click on duplicate this link to clone the page and save it as a draft, publish, pending, or private depending upon settings.

Price: Duplicate Page Pro: $15.00

WP duplicate page

If you are looking for a duplicator with a simple interface, the WP Duplicate Page plugin is right for you. After installation, you can see and use an option to duplicate a page, a post, or any custom post items. It allows you to create a new draft with selected elements before duplication.

Key Features

  • Very easy and straightforward interface.
  • Fully compatible with various WordPress themes.
  • Limit the access for different user roles.
  • Customize the text of the duplicate button.

How to duplicate a page on WordPress?

Hover over a page in the All Pages list, then select Duplicate to clone it.

Price: The plugin is totally free.

WordPress duplicate page or post plugin

WordPress Duplicate Page or Post plugin comes with a lot of options for duplicating a WordPress page such as adding prefixes or suffixes for clone pages. You can also choose to clone only the content or title, featured image, status, categories, etc.

How to duplicate a page in WordPress?

Set the necessary and useful options that you need for cloning and press the Save button. Then, open “All pages” and hover over one page to see the new option “Duplicate”. Simply click on it to duplicate WP page.

Price: The plugin is totally free.

Yoast duplicate post

This plugin is useful when you want to clone and save pages as new drafts to edit further. There is also an option for adding a tag in your template and cloning your posts/pages from the front end. Yoast duplicate post plugin allows you to customize its behavior and restrict access to its features for specific users. 

Key Features

  • Choose how to save duplicated pages: clone and new draft.
  • Specify where the copy page buttons appear.
  • Limit the access of editors to the page duplication features.

How to clone a WordPress page?

You can use one of the below methods in the All Pages list:

  • Click on the Clone link below the post/page title to duplicate a WordPress page and return to the list.
  • Select two or more pages, then choose Clone in the Bulk Actions dropdown to bulk duplicate them.

Price: The Yoast duplicate post is a free plugin.

Duplicate page and post

Duplicate page and post plugin is a great tool for creating a copy of your pages with a single click and saving it as a draft. This is a simple and light plugin with no further options.

Key features 

  • Create a clone of a particular page in a selected editor (Classic and Gutenberg).
  • Add a Suffix to the page title.
  • Customize the text for the duplicate link button.

How to create a duplicate page in WordPress?

After activation, Open All pages then hover over one page and choose the Click here to clone option.

Price: You can install and activate the plugin for free.

The advantages of WordPress posts/pages bulk editing plugin to duplicate pages in WordPress

The WordPress posts bulk editing plugin is one of the fastest ways to clone posts or pages in WordPress. Easy user interface, merging duplicating and bulk editing tools in a user-friendly toolbar, allowing to duplicate posts and custom posts, and a comprehensive filter form for choosing the posts or pages you want to duplicate are some of the most useful advantages of this plugin.

In addition, the WordPress posts/pages bulk edit plugin has the below advantages compared to the default WordPress editors for free WordPress duplicate pages:

Providing options to duplicate multiple pages multiple times

The most useful advantage of the WordPress posts/pages bulk editing plugin is the options designed to let you choose multiple pages and then duplicate them as many times as you need with one click. By using this practical tool, store managers can save time and effort in cloning posts and pages on their websites.

Allowing to bulk edit the duplicated pages 

WordPress posts/pages bulk editing plugin offers additional features for filtering and then bulk editing all duplicated posts and pages that the default WordPress editors don’t provide.

WordPress post bulk edit

Conclusion

Streamlining WordPress duplicate pages with the WordPress posts/pages bulk edit plugin is a useful solution for site managers. Of course, there are other methods for free WordPress duplicate pages with the default editors of WordPress. However, if you want to save time and effort, try this WordPress clone page plugin.

Leave a Reply

Your email address will not be published. Required fields are marked *

Captcha loading...