Si no puede pensar en una sola razón por la cual alguien necesitaría duplicar sus páginas o publicaciones en WordPress, probablemente nunca tuvo que rediseñar su sitio. Si lo hiciera, sabría cuán útil puede ser duplicar páginas o publicaciones.
En este artículo, vamos a explicar los beneficios de crear páginas o publicaciones duplicadas y le mostraremos dos formas de hacerlo: usando un complemento y usando código.
Por qué necesita páginas o publicaciones duplicadas
Una de las situaciones más comunes en las que los usuarios de WordPress pueden beneficiarse de páginas o publicaciones duplicadas es cuando quieren renovar, actualizar o revisar una página existente, pero no quieren perder todo su contenido. Lo mismo ocurre con las publicaciones, por supuesto.
«¿Qué hay de malo en copiar y pegar el contenido en un nuevo borrador para usarlo nuevamente después de realizar los cambios?» podrías preguntar. Bueno, por supuesto, eso funcionaría, pero llevaría bastante tiempo, por una cosa.
También, y más importante, podría afectar todos sus esfuerzos anteriores de SEOy, en consecuencia, dañar su rango de página. Esto se debe a que, cuando simplemente copia el contenido y lo pega en una página que ha rediseñado, todo lo que ha hecho en términos de SEO, así como su imagen destacada, las plantillas de página y otros datos relacionados, se perdería.
Además, las páginas duplicadas son útiles para situaciones en las que solo desea modifica algunas cosas en el diseño de tu página, por ejemplo, y compáralo con la versión anterior para ver cuál funciona mejor. Esto es particularmente útil cuando está rediseñando su sitio web y necesita ver cómo su contenido se adaptará a sus nuevos elementos de diseño.
Como puede ver, hay muchas situaciones en las que resulta útil crear un clon o un duplicado de su página o publicación.
Duplicar páginas o publicaciones usando un complemento
Como suele ser el caso con WordPress, las soluciones más útiles vienen en forma de nuestros pequeños amigos, los complementos. Si bien hay varios complementos excelentes para páginas y publicaciones duplicadas en el mercado, no podemos presentarlos todos, por lo que vamos a hablar sobre el más popular: Publicación duplicada.
Este es un complemento limpio, simple y funcional con más de tres millones de instalaciones activas que puedes descargar y usar gratis.
Una vez que haya instalado y activado el complemento, vaya a sus publicaciones o páginas, y notará que aparecen algunas opciones nuevas cuando se desplaza sobre la publicación que desea duplicar. Habrá dos opciones: Clon y Nuevo borrador.
El Clon opción crea el duplicado exacto de la publicación que desea editar o cambiar. El duplicado aparecerá en la parte superior de la lista de publicaciones y, al hacer clic en él, podrás editarlo de la forma habitual.
Nuevo borrador, por otro lado, crea un clon de la página y luego abre el editor de página/publicación de inmediato. Una vez que haya realizado todos los cambios necesarios en la publicación, haga clic en Publicar y revísalo en vivo.
Y eso es realmente todo lo que hay que hacer. Una vez que ya no necesite los clones, puede eliminarlos rápidamente haciendo clic en el Basura enlace que se revela debajo de la publicación al pasar el mouse.
Duplicar páginas o publicaciones sin un complemento
Si bien los complementos son ciertamente de gran ayuda en muchas situaciones, a veces queremos ensuciarnos las manos y hacer las cosas por nosotros mismos, sin recurrir a un complemento. Esto puede deberse a que queremos poner a prueba nuestros conocimientos y experiencia o demostrarnos que podemos hacerlo por nuestra cuenta. Pero la mayoría de las veces es porque ya tenemos docenas y docenas de complementos instalados y sentimos que instalar uno nuevo complicaría demasiado el proceso.
De cualquier manera, es posible duplicar una página o una publicación simplemente usando código. A un usuario de GitHub se le ocurrió una función ordenada para crear publicaciones o páginas duplicadas que simplemente necesita copiar a su funciones.php Archivo:
/*
* Function for post duplication. Dups appear as drafts. User is redirected to the edit screen
*/
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 );
to join this conversation on GitHub. Already have an account? Sign in to comment
Puedes hacerlo directamente en tu servidor usando un Cliente FTP de su elección, pero le sugerimos que simplemente use el Editor de archivos de WordPress.
Tenga en cuenta aquí que este código está escrito para Duplicar publicaciones de WordPress. Si quieres paginas duplicadas también, debe cambiar la última línea en el fragmento para que, en lugar de ‘post_raw_actions’, diga ‘page_raw_actions’.
Después de haber ingresado el código en su archivo functions.php, vaya a su tablero donde se enumeran sus páginas y publicaciones (Todas las publicaciones o Todas las páginas). Si todo funcionó bien, habrá una nueva opción disponible debajo de cada una de las publicaciones o páginas, diciendo simplemente Duplicar. Al hacer clic en él, se creará un clon de esa página o publicación en particular, tal como lo haría si estuviera usando un complemento.
Pensamientos finales
Como puede ver, crear páginas o publicaciones duplicadas de WordPress es realmente pan comido, ya sea que esté usando un complemento u optando por un código en su lugar. Estamos seguros de que encontrará esta opción más que conveniente en muchas situaciones.
solo recuerda limpiar las publicaciones duplicadas no utilizadas de vez en cuando: el desorden nunca es bueno para un sitio web. Además, si tiene la intención de usar código para duplicar publicaciones, asegúrese de que su sitio web esté respaldado, como debería ser siempre que esté editando archivos de WordPress.
Apoya nuestro trabajo ❤️
Si te ha gustado este artículo, considera dejar una propina para ayudarnos a seguir publicando contenido de calidad.




















