Mục lục [Ẩn]
Rất nhiều khách hàng có để lại câu hỏi trên đường dây nóng của Nhân Hòa về việc nhân bản post, website và những trường hợp cần thực hiện công việc trên. Vì vậy, trong chuyên mục Tin tức hôm nay, Nhân Hòa sẽ chia sẻ Hướng dẫn cách tạo Duplicate post Wordpress nhằm hỗ trợ những thông tin hiệu quả đến các bạn.
1. Khi nào bạn cần Duplicate post Wordpress?
Duplicate post Wordpress là việc nhân bản các bài viết mà không phải điều chỉnh lại các thông số SEO, hình ảnh, nội dung,... trên nền tảng Wordpress.
Nhu cầu này sẽ phát sinh trong các trường hợp như:
+ Chuyển website của mình sang dịch vụ hosting, máy chủ của nhà cung cấp khác.
+ Khách hàng yêu cầu đổi tên miền
+ Người dùng có như cầu sử dụng một website song song làm môi trường test, trước khi áp dụng vào thực tế.
+ Giải pháp để cung cấp trải nghiệm phát triển thử website cho khách hàng trên môi trường máy tính trước khi hoàn thiện.
+ Sử dụng nhân bản post như một giải pháp phòng ngừa cho việc mất cắp hoặc lỗi dữ liệu.
Bạn có thể thực hiện duplicate post wordpress bằng biện pháp thủ công hoặc thông qua các công cụ hỗ trợ. Tuy nhiên, các biện pháp thủ công thường yêu cầu người thực hiện phải có kiến thức nhiều về lập trình để không xảy ra các trường hợp như mất dữ liệu, lỗi phần mềm. Ngoài ra, giải pháp này cũng yêu cầu khá nhiều thời gian, đặc biệt với các website có dữ liệu khổng lồ.
Bình thường, khi bạn sử dụng dịch vụ hosting Wordpress tại các nhà cung cấp lớn có hỗ trợ quản lý như Nhân Hòa, bạn sẽ được cung cấp các tính năng kiểm thử, nhân bản tiện ích.
>>> Xem thêm: Ưu điểm của dịch vụ Hosting Wordpress giá rẻ tại Nhân Hòa
Nếu không, bạn có thể sử dụng các plugin Duplicate post Wordpress mà Nhân Hòa giới thiệu dưới đây để đạt được hiệu quả tốt và an toàn.
2. Hướng dẫn Duplicate post trên Wordpress hiệu quả
Nếu bạn có hiểu biết về lập trình, bạn có thể sử dụng đoạn code dưới đây để nhân bản post theo ý mình:
/*
* 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'] = 'Duplicate';
}
return $actions;
}
add_filter( 'post_row_actions', 'rd_duplicate_post_link', 10, 2 );
Người dùng chỉ cần paste đoạn code trên vào file functions.php. Hiển thị như sau:
Cuối cùng, chọn mục Alll Posts và nhấn Duplicate, các post trong Wordpress sẽ được nhân bản và sao lưu dưới dạng draft.
3. Một số plugin duplicate post Wordpress hiệu quả, dễ sử dụng.
Nếu bạn không phải là người có nhiều kiến thức về lập trình, thì Nhân Hòa khuyên bạn hãy sử dụng các plugin được viết riêng cho việc nhân bản post hoặc page. Giúp bạn tối ưu được thời gian, tiện dụng, hiệu quả và hạn chế tối đa các lỗi do sai code.
Dưới đây là một số plugin hiệu quả, Nhân Hòa khuyên bạn sử dụng:
Plugin Duplicate Post
Giải pháp này hiệu quả để thực hiện các công việc: clone bài viết trên Wordpress, điều chỉnh thông số trang,...
Các bước sử dụng plugin này được thực hiện như sau:
B1: Download, cài đặt và kích hoạt plugin
B2: Sau khi kích hoạt ấn Post -> All Post
B3: Sau đó tìm bài post bạn muốn nhân bản và lựa chọn giữa Clone và New Draft
Nếu muốn tạo bản sao chọn CLone.
Tạo bản sao cho post được chọn và mở chúng trong Post editor mới khi nhấn vào New Draft. Bạn có thể lưu nháp hoặc xuất bản nó sau khi save.
WP Stagecoach
Phần mềm này phù hợp hơn cho những khách hàng yêu cầu một website test. Nhằm giúp bạn có thể thử nghiệm các plugin, các code mới, tính năng, giao diện,... trước khi áp dụng trực tiếp trên website chính thức.
Ưu điểm của plugin này là hiệu năng mạnh mẽ, tương thích hầu như tất cả các website, dễ sử dụng, phiên bản kiểm thử không làm ảnh hưởng đến dữ liệu gốc,...
Stagecoach là một công cụ trả phí, với mức giá khoảng 12 đô/ tháng.
Điểm nổi bật của UpdraftPlus Premium là cho phép nhân bản và di chuyển post/website dễ dàng. Bao gồm các công cụ thông minh như: Migrator, UpdraftClone,... đảm bảo được đồng thời các add-on đi kèm
Plugin này có một số hạn chế như giá thành cao, bạn phải mua thêm token nếu muốn duy trì website kiểm thử.
Plugin Duplicate Page and Post
Plugin này có tác dụng giúp bạn tạo bản sao của post mà vẫn giữ nguyên được định dạng SEO như title, styling, nội dung,....
Sử dụng công cụ theo hướng dẫn sau:
B1: Download, cài đặt và kích hoạt plugin
B2: Tiếp theo chọn Post và nhấn vào All Post
B3: Di chuyển bài viết bạn muốn nhân bản và lựa chọn Clone me
B4: Sau đó, bạn sẽ được di chuyển đến bản sao của post. Bạn lựa chọn giữa lưu trữ hoặc công khai sau khi chỉnh sửa tại nút Save Draft hoặc Publish.
Plugin Post Duplicator Pro
Post Duplicator là một lựa chọn được ưu ái với hầu hết người sử dụng Wordpress. Nhờ ưu điểm dễ sử dụng, thời gian nhân bản nhanh, hệ thống khỏe, không có thời gian chết. Ngoài ra, Duplicator có khả năng di chuyển được đầy đủ các nội dung như các plugin, theme, nội dung, cơ sở dữ liệu,....
Duplicator Pro có phiên bản miễn phí cho người dùng. Tuy nhiên, với phiên bản trả phí bạn sẽ được sử dụng thêm các tính năng cao cấp như: sử dụng cùng lúc trên 3 website, sao lưu định kỳ,....
XCloner
XCloner là một công cụ hoàn toàn miễn phí. Cho phép bạn nhân bản website, sao lưu trung gian và sao lưu tự động.
Hạn chế của plugin này là khá khó sử dụng, yêu cầu người sử dụng cần có kiến thức cơ bản về mặt kỹ thuật.
NS Cloner
Plugin này được phát triển riêng cho các mạng đa website. Các website nhân bản vẫn giữ nguyên được cài đặt, theme, plugin,.... Bạn có thể sử dụng công cụ này hoàn toàn miễn phí, hoặc lựa chọn trả phí 99 đô/năm nếu bạn yêu cầu nhiều tính năng chuyên nghiệp hơn.
Đây là một lựa chọn hiệu quả nếu bạn sử dụng nhiều website kiểm thử, hoặc là nhà cung cấp thiết kế, lập trình thường xuyên phải lập môi trường test cho khách hàng.
Tuy nhiên, cần nhớ rằng, NS Cloner không sử dụng cho các website đơn.
>>> Có thể bạn quan tâm: Cách chọn Plugin Wordpress Gallery cho Website bán hàng
Như vậy, dựa vào nhu cầu sử dụng toàn diện, khách hàng sẽ lựa chọn những plugin phù hợp nhất.
Kết luận
Về cơ bản, việc nhân bản post của bạn không quá khó khăn với Hướng dẫn cách tạo duplicate post wordpress của Nhân Hòa như trên hoặc nhờ hỗ trợ của các plugin chuyên môn. Khi muốn chuyển sang hosting wordpress hoặc máy chủ khác, bạn cần tìm hiểu kỹ về các giải pháp phần mềm toàn diện tại những nhà cung cấp như Nhân Hòa. Để đảm bảo được cung cấp hệ thống máy móc hiện đại, chất lượng dịch vụ chuyên nghiệp với giá thành tiết kiệm.
+ Tổng đài: 1900 6680
+ Website: https://nhanhoa.com/
+ Fanpage: https://www.facebook.com/nhanhoacom
+ Chỉ đường: https://g.page/nhanhoacom