Cum să duplicați o pagină sau o postare în WordPress
Publicat: 2023-02-12Duplicarea unei pagini sau a unei postări în WordPress poate însemna mai mult decât simpla copiere și lipire a conținutului. De asemenea, puteți păstra șablonul de pagină, datele SEO și imaginile, pentru a economisi timp atunci când vă reproiectați site-ul sau actualizați conținutul.
Din fericire, duplicarea paginilor și postărilor și a tuturor datelor asociate acestora în WordPress poate fi ușoară. Există modalități simple de a face treaba, atât cu cât și fără un plugin.
În acest articol, vom analiza cum să creați o clonă de pagină duplicată WordPress sau să postăm în siguranță și vom introduce câteva plugin-uri care vă pot ajuta. Să sărim direct înăuntru!
Clonează cu ușurință o pagină în WordPress cu aceste pluginuri
Clonarea unei pagini în WordPress este foarte simplă atunci când folosești un plugin WordPress, deoarece totul se face chiar în tabloul de bord. Pluginurile sunt, de asemenea, cea mai sigură modalitate de a duplica o postare sau o pagină, deoarece nu vei modifica direct codul site-ului tău.
Dacă sunteți în căutarea instrumentului potrivit, iată patru plugin-uri care merită verificate.
1. Postare duplicat
Una dintre opțiunile de acces pentru clonarea paginilor și postărilor WordPress este Postarea duplicată. Acest plugin popular este ușor de utilizat și clonează totul, de la conținutul paginii sau postării până la comentariile asociate. De asemenea, oferă o opțiune de prefix sau sufix, pentru a diferenția postarea originală și clona.
Pentru a duplica o postare WordPress cu acest instrument, trebuie doar să:
- Instalați și activați pluginul.
- În tabloul de bord WordPress, accesați Postări > Toate când clonați postările sau Pagini > Toate când clonați paginile.
- Navigați la pagina originală sau postarea pe care doriți să o copiați și faceți clic pe Clonează pentru a o duplica.
- Pot fi selectate mai multe pagini sau postări și le puteți clona pe toate simultan folosind Acțiuni în bloc .
2. Duplicați pagina și postați
Duplicate Page and Post nu are multe caracteristici, dar compensează asta în viteză. Acest plugin ușor de postare duplicat este una dintre cele mai rapide modalități de a clona o postare sau o pagină în WordPress și nu vă va îngreuna site-ul cu clopote și fluiere inutile.
Pentru a clona o pagină sau o postare cu acest plugin, utilizați următorii pași:
- Instalați și activați pluginul.
- Accesați Postări > Toate sau Pagini > Toate , în funcție de ceea ce doriți să duplicați.
- Plasați cursorul peste pagina sau postarea pe care doriți să o clonați.
- Faceți clic pe opțiunea Duplicare .
3. Duplicați pagina
Duplicate Page oferă câteva funcții suplimentare pe care alte plugin-uri de clonare nu le oferă. Acest plugin va duplica postările, paginile și tipurile de postări personalizate. În plus, puteți salva copiile rezultate ca schițe, în așteptare, publice sau private.
Pentru a utiliza Pagina Duplicată, trebuie doar să:
- Instalați și activați pluginul.
- Configurați setările acestuia pentru a răspunde nevoilor dvs.
- Accesați Pagini > Toate sau Postări > Toate pentru a găsi conținutul pe care doriți să îl duplicați.
- Faceți clic pe opțiunea Duplicați această .
4. Post Duplicator
Un alt plugin simplu de clonare este Post Duplicator. Această soluție creează o copie exactă a oricărei postări sau pagini, inclusiv tipuri de postări personalizate, câmpuri personalizate și taxonomii personalizate. Este rapid și ușor de utilizat și nu ar trebui să adauge multă greutate site-ului dvs.
Pentru a duplica conținut cu acest instrument, urmați acești pași:
- Instalează pluginul și activează-l.
- Navigați la Postări > Toate sau Pagini > Toate pentru a găsi conținutul pe care doriți să-l clonați.
- Plasați cursorul peste postare sau pagină.
- Faceți clic pe opțiunea Duplicare pagină sau Duplicare postare .
Duplicarea unei pagini în WordPress fără un plugin
Desigur, nu trebuie să utilizați un plugin pentru a clona o pagină sau a posta în WordPress. Acest lucru se poate face și manual, fie prin editarea fișierului funtions.php , fie prin copierea și lipirea codului relevant. Să vedem cum funcționează ambele metode.
1. Activați clonarea prin codul functions.php
Una dintre modalitățile manuale de a clona o pagină sau o postare WordPress este editarea codului din fișierul functions.php . Deși acest lucru poate fi ușor de făcut, trebuie să fiți precaut și să faceți mai întâi o copie de rezervă a site-ului dvs.
Pentru a activa clonarea postărilor, va trebui să accesați fișierul functions.php și să-l deschideți pentru editare, utilizând protocolul de transfer securizat de fișiere (FTP) sau orice altă metodă pe care o preferați. Apoi va trebui să adăugați următorul fragment de cod la sfârșitul fișierului:
/*
* 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 );
Pentru a activa clonarea și pentru pagini, utilizați același cod, dar înlocuiți linia finală cu:
add_filter('page_row_actions', 'rd_duplicate_post_link', 10, 2);
După aceea, puteți salva fișierul și îl puteți reîncărca pe server. Apoi vă puteți întoarce la tabloul de bord WordPress. Un buton Duplicare ar trebui să apară acum când treceți cu mouse-ul peste o pagină sau o postare pe care doriți să o clonați.
2. Copiați și inserați manual codul pentru a duplica o pagină
Dacă nu doriți să editați fișierul functions.php , puteți copia și lipi manual codul pentru pagina sau postarea pe care doriți să o clonați. Pentru a face acest lucru, va trebui să:
- Deschideți pagina sau postarea pe care doriți să o duplicați.
- Faceți clic pe meniul Mai multe instrumente și opțiuni .
- Selectați Editor de coduri .
- Copiați codul pentru pagină sau postare.
- Faceți clic pe Postare nouă sau Pagina nouă .
- În noua postare sau pagină, deschideți Editorul de coduri .
- Lipiți codul.
- Faceți clic pe meniul Mai multe instrumente și opțiuni .
- Selectați Editor vizual .
- Noua pagină sau postare ar trebui să fie acum o clonă a celei vechi.
Acest proces poate dura puțin timp și va trebui să îl faceți individual pentru fiecare pagină sau postare pe care doriți să o copiați. De aceea, vă recomandăm să utilizați un plugin WordPress pentru pagini duplicate dacă doriți să duplicați o mulțime de conținut.
Continuați să învățați cu WP Engine
Îmbunătățirea experienței dvs. WordPress este ușoară cu clonarea paginii. Există o mulțime de alte moduri în care puteți economisi timp, de asemenea, cum ar fi migrând pagini sau postări între site-urile WordPress și chiar copierea mediilor de dezvoltare.
Aici, la WP Engine, oferim cele mai bune resurse pentru dezvoltatorii care doresc să construiască o experiență digitală excelentă pentru clienții lor. Consultați planurile noastre pentru a începe imediat!