Cómo duplicar una página en tu sitio de WordPress

Guía: comenzar con WordPress
Maria Coppola
Maria Coppola

Actualizado:

Publicado:

La opción «Copiar y pegar» sería más que bienvenida para duplicar una página en WordPress, pero, infortunadamente, no existe como tal. Sin embargo, si necesitas hacer optimizaciones de diseño en tu sitio, pero quieres mantener intacto tu contenido sin alterar la optimización SEO con la que ya cuentas, es posible hacerlo duplicar tu página con plugins o de forma manual.

Cómo duplicar una página en tu sitio de WordPress
Guía Gratis

Aprende todo lo necesario para comenzar con WordPress

Cuéntanos un poco de ti para acceder a la guía

Duplicar una página en WordPress no es una tarea común cuando tienes un sitio web. Sin embargo, es posible que te funcione para diversos casos, por ejemplo:

  • Replicar alguna landing page que te haya funcionado muy bien anteriormente, en la que solo debas implementar pequeños cambios.
  • Deseas hacer ajustes a tu página web, pero no estás seguro de si lo que tienes pensado quedará bien.
  • Necesitas ejecutar pruebas A/B para comprobar que ciertos elementos que hayas colocado en tu página realmente estén funcionando, por ejemplo: CTA o aspectos de diseño.

WordPress es muy flexible y ofrece muchas alternativas que se ajustan a tus necesidades y requerimientos.  plugins disponibles. Te diremos cómo hacerlo de ambas formas; en esta ocasión, la opción con plugins la ilustraremos con Yoast Duplicate Post. 

1. Instala el plugin de Yoast Duplicate Post

Entra a tu cuenta de WordPress y en el menú de herramientas dirígete a la opción de «Plugins», «Añadir uno nuevo», existen varias opciones como Duplicate Page, Post Duplicator y Yoast Duplicate Post. Nosotros te mostraremos cómo hacerlo empleando Yoast .

El primer paso es descargarlo y activarlo. 

Cómo duplicar una página de WordPress: descargar Yoast Duplicate Post

2. Busca la página que quieres duplicar 

Una vez que has activado el plugin, debes dirigirte nuevamente al menú de herramientas y buscar «Páginas». Aquí se encuentran todas las páginas que forman parte de tu sitio web, donde justamente está la que quieres clonar. 

Cómo duplicar una página de WordPress: seleccionar la página

3. Duplica la página deseada

Cuando hayas ubicado la página que quieres duplicar en WordPress pasa el cursor sobre ella para poder ver las siguientes opciones: 

Cómo duplicar una página de WordPress: clonar o crear borrador

Las dos opciones que te interesan para duplicar una página en WordPress son «Clonar» y «Nuevo borrador». La primera sirve para crear una versión clonada (completamente igual) de la página seleccionada; mientras que la segunda es para crear una versión clonada de tu entrada seleccionada y poder abrirla en el editor de entradas (y después guardarla como borrador o publicarla). 

¡Listo! Así de fácil puedes duplicar una página en WordPress de tu sitio web. 

<< Descarga gratis la guía para dar tus primeros pasos con WordPress  <https://offers.hubspot.es/como-comenzar-con-wordpress?hubs_post-cta=anchor> >> 

¿Cómo duplicar una página en tu sitio de WordPress de forma manual?

Si quieres duplicar una página en WordPress de forma manual, es decir, a través de código HTML, te recomendamos hacerlo solo si dominas el lenguaje o si cuentas con ayuda de un programador, pues el proceso es mucho más complejo y podrías no obtener los resultados que esperas.

No olvides realizar una copia de seguridad de tu sitio, pues cualquier acción que realices con código podría modificar o incluso estropear tu diseño actual. Lo mejor es que, si no te gusta el resultado, puedas regresar a tu diseño habitual fácilmente. A continuación te decimos cómo puedes lograrlo.

1. Pega el fragmento de código functions.php

Para duplicar una página en tu sitio de WordPress debes abrir tu archivo HTML y pegar el fragmento de código functions.php que te compartimos a continuación: 

function rd_duplicate_post_as_draft(){global $wpdb;if (! ( isset( $_GET['post']) || isset( $_POST['post']) || ( isset($_REQUEST['action']) && 'rd_duplicate_post_as_draft' == $_REQUEST['action'] ) ) ) {wp_die('No post to duplicate has been supplied!');}/** Nonce verification*/if ( !isset( $_GET['duplicate_nonce'] ) || !wp_verify_nonce( $_GET['duplicate_nonce'], basename( __FILE__ ) ) )return;/** get the original post id*/$post_id = (isset($_GET['post']) ? absint( $_GET['post'] ) : absint( $_POST['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, 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 href="' . wp_nonce_url('admin.php?action=rd_duplicate_post_as_draft&post=' . $post->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 );

2. Reemplaza última línea de código para duplicar página 

Para activar la función de duplicar página debes reemplazar la última línea del código que te compartimos anteriormente con el siguiente fragmento: 

add_filter ( 'page_row_actions' , 'rd_duplicate_post_link' , 10 , 2 ) ;

3. Activa el botón «Duplicar»

Cuando hayas insertado el código anterior, podrás ver en tu panel de WordPress el botón «Duplicar» en el menú de «Todas las publicaciones» o «Todas las páginas». Al activarlo, habrás logrado duplicar la página que deseabas.

Ahora ya sabes que para duplicar una página en WordPress tienes dos opciones: añadir alguno de los plugins para clonar la página que deseas o hacerlo de forma manual modificando el código de archivo. Sin duda, la primera opción es la más rápida y fácil, además no comprometes ni la optimización ni el diseño de tu sitio en caso de cometer alguna equivocación.

Cómo comenzar a utilizar WordPress

Temas: WordPress

Artículos relacionados

Tu privacidad es muy importante para nosotros. HubSpot utiliza la información que nos proporcionas para mantenerte al tanto de nuestros productos, servicios y contenido relevante. Puedes cancelar la suscripción a estos mensajes en cualquier momento. Para más información, consulta nuestra Política de privacidad.

Descarga gratis la guía para dar tus primeros pasos con WordPress

CMS Hub is flexible for marketers, powerful for developers, and gives customers a personalized, secure experience

START FREE OR GET A DEMO