4 Cách nhân bản (Duplicate) Post và Page đơn giản, nhanh chóng
Với các cách nhân bản (duplicate) Post mà tôi hướng dẫn, bạn sẽ không phải tốn nhiều thời gian để Copy/ Paste từng bài rồi điều chỉnh các Image, thông số SEO,...lại từ đầu.
4 Cách nhân bản (Duplicate) Post và Page đơn giản, nhanh chóng
MỤC LỤC:
- Cách nhân bản Post/ Page với Plugin Duplicate Post
- Nhân bản trang hoặc bài viết với Plugin Duplicate Page and Post
- Duplicate Post với Plugin Post Duplicator trên WordPress
- Clone Page hoặc Post mà không cần Plugin Duplicate Post WordPress
Sẽ có nhiều trường hợp bạn muốn làm lại trang hiện tại với thiết kế hoàn toàn mới. Tuy nhiên, bạn lại muốn giữ lại toàn bộ bài viết nên bạn đã Copy/ Paste lại rồi lưu vào File Draft. Tuy nhiên, việc làm này sẽ không lưu lại các thông tin liên quan, SEO Optimization, Featured Images và Page Templates của bạn. Nếu bạn muốn Clone toàn bộ Blog hoặc Page thì sẽ mất rất nhiều thời gian cho công việc này.
Trên thực tế, nếu bạn sử dụng Yoast SEO hãy cài đặt Yoast Duplicate Post để tối ưu nhất cho SEO. Nếu bạn không dùng Yoast SEO, hãy tham khảo ngay 4 cách nhân bản Post đơn giản mà ai cũng có thể thực hiện được qua bài viết của tôi nhé.
Các thông tin cần biết trước khi bắt đầu:
- Plugin WordPress là gì? 3 cách cài đặt Plugin đơn giản
- Featured Image là gì? Cài đặt Featured Image chuẩn SEO
- 10 Lỗi thường gặp khi sử dụng website WordPress
Để tiết kiệm thời gian hơn với trang Web WordPress, tôi sẽ hướng dẫn bạn một số cách tuyệt vời. Các cách này vừa tiết kiệm thời gian, vừa sao chép đầy đủ nội dung, tính năng, thông số SEO,... Chỉ vài cú Click đơn giản, bạn sẽ Clone được toàn bộ trang Web hoặc tất cả bài viết của Website.
Cách nhân bản Post/ Page với Plugin Duplicate Post
Plugin Duplicate Post giúp bạn nhân bản bài viết hoặc trang nhanh chóng.
Plugin Duplicate Post sẽ giúp bạn Clone bài viết hoặc trang Web WordPress dễ dàng và nhanh chóng nhất. Nó không chỉ hỗ trợ bạn nhân bản bài viết mà còn giúp bạn chèn thêm các thông số riêng.
Plugin này sẽ cung cấp cho bạn một Suffix Pre-Defined để thêm vào trước hoặc sau Title của Post/ Page.
Cách nhân bản Post hoặc Page với Plugin Duplicate Post như sau:
- Bước 1: Bạn cần cài đặt và kích hoạt Plugin Duplicate Post.
- Để cài đặt, bạn truy cập vào trang Dashboard của WordPress.
- Tiếp theo, hãy chọn Menu Plugin và Click vào Add New.
- Bạn gõ tìm Plugin Duplicate Post và nhấn vào Install Now để bắt đầu quá trình cài đặt.
- Cuối cùng, bạn Click vào Activate Plugin để kích hoạt.
- Bước 2: Bạn tiếp tục nhấn vào nút Page rồi Click tiếp vào All Pages.
- Bước 3: Tại đây, bạn sẽ di chuyển các bài viết nào mà bạn muốn Clone ra. Sau đó, bạn sẽ thấy 2 mục Option là Clone và New Draft.
- Bước 4: Nếu bạn muốn nhân bản bài viết thì hãy nhấn vào nút Clone của Post được chọn. Còn nếu muốn tạo bản sao của bài Post nhưng nó sẽ được mở lên trong Post Editor mới thì bạn Click vào nút New Draft. Sau đó, bạn có thể lưu bản nháp hoặc xuất bản nó sau khi Save lại.
Nhân bản trang hoặc bài viết với Plugin Duplicate Page and Post
Plugin Duplicate Page and Post giúp bạn tạo bản sao và giữ lại toàn bộ nội dung.
Plugin Duplicate Page and Post là một Plugin nhân bản giúp bạn có thể dễ dàng Clone Post và Page cực nhanh chóng. Plugin này không những tạo bản sao mà nó còn giữ lại toàn bộ nội dung, Title, Styling của chúng.
Cách nhân bản Post/ Page với Plugin Duplicate Page and Post gồm các bước:
- Bước 1: Đầu tiên, bạn phải cài đặt và kích hoạt Plugin Duplicate Page and Post.
- Cách cài đặt tương tự như cài đặt Plugin Duplicate Post ở trên. Đầu tiên, bạn cần vào trang Dashboard của WordPress.
- Tiếp theo vào Menu Plugin -> Add New và tìm Plugin Duplicate Page and Post.
- Sau đó, bạn Click vào Install Now, đợi khi Plugin cài đặt xong thì bạn kích hoạt bằng cách Click vào Activate Plugin.
- Bước 2: Tiếp theo thì bạn Click vào mục Pages, sau đó Click vào All Pages để nhân bản trang. Còn để nhân bản bài viết thì bạn hãy Click chọn Post rồi Click, sau đó Click tiếp vào All Posts.
- Bước 3: Sau đó, bạn di chuyển đến bài viết mà bạn muốn nhân bản rồi Click vào nút Clone Me.
- Bước 4: Sau đó, bạn sẽ được chuyển đến bản Copy của bài viết hoặc của Page. Công việc tiếp theo là bạn chỉnh sửa nó và Click vào nút Publish hoặc Save Draft.
Duplicate Post với Plugin Post Duplicator trên WordPress
Plugin Post Duplicator giúp nhân bản và giữ lại các trường Taxonomies, Custom.
Nếu như cả 2 Plugin trên vẫn chưa phù hợp với tất cả yêu cầu của bạn thì tôi xin gợi ý tiếp một Plugin khác. Đó là Post Duplicator.
Plugin Duplicate Post của WordPress sẽ giúp bạn tạo nên bản sao chính xác cho bài viết được chọn. Cách nhân bản Post này cho phép bạn giúp giữ lại tất cả các trường như Custom và Taxonomies.
Để nhân bản Post hoặc Page với Plugin Duplicate Post thì bạn thực hiện theo các bước sau:
- Bước 1: Chắc chắn bước đầu tiên bạn cần làm là cài đặt và kích hoạt Plugin Post Duplicator. Các bước cài đặt tương tự như ở hai Plugin phía trên.
- Bước 2: Tiếp theo, bạn đến trang hoặc bài viết mà bạn muốn Duplicate và Click vào Duplicate Post hoặc Duplicate Page.
- Bước 3: Plugin này sẽ Duplicate Post hoặc Page mà bạn đã chọn ngay lập tức.
Clone Page hoặc Post mà không cần Plugin Duplicate Post WordPress
Lưu ý: Với cách làm này, bạn phải Backup Website trước tiên rồi sau đó mới chỉnh sửa File gốc của WordPress.
Ngoài việc sử dụng Plugin, nếu bạn nào biết Code có thể dùng cách này để Duplicate Page/ Post. Cách để nhân bản Post bằng Code Web được thực hiện như sau:
-
Bước 1: Đầu tiên, bạn hãy Copy Code Snippet ở phía dưới để kích hoạt Post Duplication trong WordPress:
*/
* 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 );
-
Bước 2: Cách này chỉ được dùng để Duplicate post WordPress, bạn có thể thay dòng cuối để Duplicate Page WordPress:
add_filter('page_row_actions', 'rd_duplicate_post_link', 10, 2);
-
Bước 3: Bạn hãy Copy đoạn Code trên và dán vào File Functions.php.
Để làm được điều này thì bạn phải vào File Manager, FTP Client hoặc dùng WordPress File Editor.
-
Bước 4: Tiếp theo, bạn chỉ việc chuyển đến mục All Pages hoặc All Posts là bạn đã thấy được nút Duplicate.
-
Bước 5: Khi nhấn vào nút này thì WordPress sẽ tự động tạo một bản sao của bài viết hoặc trang.
Sau đó, Post hoặc Page này sẽ được lưu dưới dạng Draft.
Tổng kết
Ở trên là tổng hợp 4 cách nhân bản Post hoặc Page đơn giản và được thực hiện nhanh chóng. Bạn có thể áp dụng chúng để tiết kiệm thời gian khi phải thực hiện thủ công. Từ giờ, bạn sẽ không cần phải Copy/ Paste từng bài Post/ Page nữa mà chỉ cần vài cú Click chuột để sao chép toàn bộ bài viết trên Web.
Tất cả Plugin ở trên không những nhanh mà còn đáng tin cậy. Hy vọng bài viết của tôi sẽ giúp ích cho bạn trong thời gian tới. Đừng quên liên hệ với nơi bạn thuê Hosting WordPress để đảm bảo Plugin tương thích cũng như Backup nếu bạn chưa đủ kiến thức chuyên sâu để đánh giá Plugin nhé!
Tham khảo từ khóa liên quan Hosting WordPress: