Xóa bỏ /product-category/ trong Url danh mục sản phẩm Woocommerce | Thiết Kế Web 39

Lướt qua 1 số các diễn đàn thấy nhiều bạn hỏi cách xóa product-category (danh-muc-san-pham) trong URL của Woocommerce. Nhưng đa số các cách mà những bạn hỗ trợ áp dụng vào đều bị lỗi như là link not found (lỗi 404) hoặc là không xóa được product-category. Bài viết này, mình sẽ hướng dẫn bạn cách xóa bỏ product-category trong Woocommerce đơn giản mà không bị lỗi.

xoa-bo-product-category-trong-url-danh-muc-san-pham-woocommerce

Để xóa product-category trong link woocommerce bạn chỉ cần cài thêm 1 plugin và thiết lập như hướng dẫn dưới đây là được nhé. Mình đã làm thử trên web bán hàng của mình và hoàn toàn không có lỗi.

Hướng dẫn xóa bỏ product-category trong url woocommerce

Bình thường sau khi cài woocommerce đường dẫn url danh mục sản phẩm của bạn sẽ có dạng như: Thietkeweb39.com/product-category/dien-thoai-thong-minh hoặc Thietkeweb39.com/danh-muc-san-pham/dien-thoai-thong-minh nếu woocommerce của bạn đã Việt hóa. Bây giờ bạn muốn url có dạng: Thietkeweb39.com/dien-thoai-thong-minh để đường dẫn url của bạn vừa gắn gọn vừa chuẩn SEO hơn đúng không nào?

Tham khảo thêm: Xóa bỏ link /san-pham/ trong URL sản phẩm WooCommerce

Hướng dẫn xóa bỏ product-category trong URL bằng plugin

Đây là cách dễ dàng và nhanh chóng nếu bạn không biết về code. Bạn cài đặt plugin WP htaccess Control vào web.

Nếu bạn đang làm website bán hàng để kinh doanh thì bạn nên mua plugin Woocommerce SEO để có thể remove product-category woocommerce và hơn nữa plugin Woocommerce SEO giúp cho Woocommerce có thể SEO tốt hơn.

Sau khi cài đặt xong bạn truy cập vào Settings -> htaccess Control để vào thiết lập trong plugin WP htaccess Control.

Tại bảng thiết lập của plugin bạn click vào Remove Taxonomies and Author Base để mở rộng thiết lập ra. Bạn sẽ thấy các tùy chọn như hình dưới. Ở đây bạn tick vào mục Remove Product Categories Base để xóa bỏ product-category trong link woocommerce. Sau đó kéo xuống và ấn Save all changes để lưu cài đặt

xoa-bo-product-category-trong-url-danh-muc-san-pham-woocommerce-2

Hướng dẫn xóa bỏ product-category trong URL không dùng plugin

Để xóa bỏ chữ product-category trong URL mà không cần dùng plugin bạn copy đoạn code bên dưới paste vào file functions.php trong theme đang sử dụng, sau đó vào Cài đặt (Setting) -> Đường dẫn tĩnh (Permalink) -> Lưu thay đổi (Save change) để cập nhật lại đường dẫn là xong.

product-category'; //Thay bằng slug hiện tại của bạn. Mặc định là product-category
 if(strpos($url, $taxonomy_slug) === FALSE) break;
 $url = str_replace('/' . $taxonomy_slug, '', $url);
 break;
 endswitch;
 return $url;
}
function devvn_product_category_rewrite_rules($flash = false) {
 $terms = get_terms( array(
 'taxonomy' => 'product_cat',
 'post_type' => 'product',
 'hide_empty' => false,
 ));
 if($terms && !is_wp_error($terms)){
 $siteurl = esc_url(home_url('/'));
 foreach ($terms as $term){
 $term_slug = $term->slug;
 $baseterm = str_replace($siteurl,'',get_term_link($term->term_id,'product_cat'));
 add_rewrite_rule($baseterm.'?$','index.php?product_cat=".$term_slug,"top');
 add_rewrite_rule($baseterm.'page/([0-9]{1,})/?$', 'index.php?product_cat=".$term_slug."&paged=$matches[1]','top');
 add_rewrite_rule($baseterm.'(?:feed/)?(feed|rdf|rss|rss2|atom)/?$', 'index.php?product_cat=".$term_slug."&feed=$matches[1]','top');
 }
 }
 if ($flash == true)
 flush_rewrite_rules(false);
}
add_action('init', 'devvn_product_category_rewrite_rules');
add_action( 'create_term', 'devvn_new_product_cat_edit_success', 10, 2 );
function devvn_new_product_cat_edit_success( $term_id, $taxonomy ) {
 devvn_product_category_rewrite_rules(true);
}

Lưu ý:

  • dòng 6 đang áp dụng cho slug danh mục là “product-category“. Bạn hãy kiểm tra slug (vào Cài đặt -> Đường dẫn tĩnh), nếu nó khác hãy sửa thành slug hiện tại của web bạn.
  • Sau khi làm xong nếu bị lỗi phân trang (/page/2 – 404 not found) là do ở phần permalink của posts bạn đang để dạng .html. Khi đó hãy thay code dòng 25, 26 bằng 2 dòng code dưới đây:
add_rewrite_rule($baseterm.'/page/([0-9]{1,})?$', 'index.php?product_cat=".$term_slug."&paged=$matches[1]','top');
add_rewrite_rule($baseterm.'/(?:feed/)?(feed|rdf|rss|rss2|atom)?$', 'index.php?product_cat=".$term_slug."&feed=$matches[1]','top');

Như vậy là bạn đã remove product-category woocommerce xong rồi đó. Bây giờ link danh mục sản phẩm của bạn sẽ có dạng: Thietkeweb39.com/dien-thoai-thong-minh

Tham khảo thêm: Cách xóa bỏ /category/ trong đường link URL của WordPress

Lời kết

Vậy là bạn đã biết cách xóa đoạn product-category trong đường dẫn danh mục sản phẩm Woocommerce (remove product-category woocommerce) rồi nhé. Cách xóa rất đơn giản đúng không nào. Chỉ cần cài thêm plugin WP htaccess Control mọi thứ sẽ trở lên đơn giản hơn nhiều.

Cảm ơn bạn đã theo dõi blog Thiết Kế Web 39! Chúc các bạn thành công.

Bài viết tham khảo của bác Nguyenhung.net

Leave a Reply

Your email address will not be published. Required fields are marked *