
Si no puede pensar en una sola razón por la que alguien necesitaría duplicar sus páginas o publicaciones en WordPress, probablemente nunca haya tenido que rediseñar su sitio. Si lo hiciera, sabría lo útil que puede ser la duplicación de 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 plugin 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 desean renovar, actualizar o revisar una página existente, pero no quieren perder todo su contenido. Lo mismo ocurre con las publicaciones, por supuesto.
"¿Qué tiene de malo copiar y pegar el contenido en un nuevo borrador para usarlo nuevamente después de realizar los cambios?" podría preguntar. Bueno, por supuesto, eso funcionaría pero sería bastante lento, por una cosa.
Además, y lo que es más importante, podría afectar todos sus esfuerzos de SEO anterioresy, 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 cuanto a SEO, así como su imagen destacada, plantillas de página y otros datos relacionados, se perderían.
Además, las páginas duplicadas son útiles para situaciones en las que solo desea modificar algunas cosas en el diseño de su página, por ejemplo, y compárelo 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 ajustará a sus nuevos elementos de diseño.
Como puede ver, hay muchas situaciones en las que es útil crear un clon o un duplicado de su página o publicación.
Como suele ocurrir con WordPress, las soluciones más útiles vienen en forma de nuestros pequeños amigos, los plugins. Si bien hay varios plugins excelentes para páginas y publicaciones duplicadas en el mercado, no es posible que podamos presentarlos a todos, por lo que vamos a hablar sobre el más popular: Publicación duplicada.

Este es un plugin ordenado, simple y funcional con más de tres millones de instalaciones activas que puede descargar y utilizar de forma gratuita.
Una vez que haya instalado y activado el plugin, vaya a sus publicaciones o páginas, y notará que aparecen algunas opciones nuevas mientras se desplaza sobre la publicación que desea duplicar. Habrá dos opciones: Clon y Nuevo borrador.

los 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 la página / editor de publicaciones 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 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.

Si bien los plugins 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 plugin. Esto puede deberse a que queremos poner a prueba nuestro conocimiento y experiencia o demostrarnos que podemos hacerlo por nuestra cuenta. Pero la mayoría de las veces es porque ya tenemos decenas y decenas de plugins instalados y creemos que instalar uno nuevo pesaría demasiado todo el asunto.
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 genial para crear publicaciones o páginas duplicadas que simplemente necesita copiar a su functions.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 utilice el Editor de archivos de WordPress.
Tenga en cuenta aquí que este código está escrito para duplicar publicaciones de WordPress. Si quieres páginas duplicadas Además, debe cambiar la última línea del 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 panel de control 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 plugin.
Como puede ver, crear páginas o publicaciones de WordPress duplicadas es en realidad pan comido, ya sea que esté usando un plugin u optando por el código. 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 utilizar código para duplicar publicaciones, asegúrese de que su sitio web esté respaldado, como debería ser cada vez que edita archivos de WordPress.
Deja una respuesta