- Thêm nút tăng giảm số lượng sản phẩm khi thêm vào giỏ hàng trong woocommerce
- Thêm tiền tệ VNĐ vào woocommerce
- Một số hook thông dụng trong woocommerce nên biết
- Hướng dẫn thay đổi cách hiển thị giảm giá bắt mắt người xem trong Woocommerce
- Hướng dẫn xóa product, product-category trong đường dẫn của woocommerce
Sau 1 loạt bài viết về thiết lập đường dẫn tĩnh cho woocommerce như Hướng dẫn xóa product, product-category trong đường dẫn của woocommerce hay Cách cài đặt base của danh mục sản phẩm giống với base của trang sản phẩm hôm nay mình sẽ hướng dẫn các bạn cách xóa bỏ product-category đồng thời bỏ toàn bộ slug của danh mục cha ra khỏi đường dẫn tĩnh
Mình cũng không hiểu tại sao trong SEO lại cần đường dẫn kiểu rút gọn như vậy. Thấy bảo để tối ưu SEO thì biết thế… nhưng có cầu thì có cung… sau khi có yêu cầu mình đã ngâm cứu và viết ra đoạn code có thể đáp ứng yêu cầu trên.
Các bài viết có thể bạn quan tâm:
Để duy trì blog nên mình có làm aff cho 1 số bên hosting. Nhưng dù aff mình cũng chọn 1 số nhà cung cấp uy tín về chất lượng và support nên các bạn cứ yên tâm nhé.
Nếu có mua hosting mà có trong list dưới đây các bạn click vào link trước khi mua để ủng hộ mình nhé. Mình cảm ơn nhiều
- Azdigi: Giá rẻ thì dùng gói Pro Gold Hosting còn chất lượng hơn thì em khuyên dùng Business Hosting. Có điều kiện thì lên VPS nhé
- Tino hosting
- iNet
- Nước ngoài thì Vultr
- Hướng dẫn xóa product, product-category trong đường dẫn của woocommerce
- Cách cài đặt base của danh mục sản phẩm giống với base của trang sản phẩm
Chúng ta sẽ lấy 1 ví dụ cụ thể để hiểu rõ hơn yêu cầu là cái mà đoạn code này làm được nhé.
Mặc định chúng ta có
Danh mục sản phẩm: http://domain.com/product-category/may-tinh
Danh mục con cấp 1: http://domain.com/product-category/may-tinh/may-tinh-de-ban
Danh mục con cấp 2: http://domain.com/product-category/may-tinh/may-tinh-de-ban/may-tinh-dell
Sau khi áp dụng đoạn code này chúng ta có:
Danh mục sản phẩm: http://domain.com/may-tinh
Danh mục con cấp 1: http://domain.com/may-tinh-de-ban
Danh mục con cấp 2: http://domain.com/may-tinh-dell
Code xóa bỏ product-category và bỏ toàn bộ slug của danh mục cha ra khỏi đường dẫn tĩnh
Chỉ cần cho đoạn code sau vào file functions.php của theme đang sử dụng. Sau đó vào update lại permalink tại Setting->Permalink->Save Change.
/* * Author: https://levantoan.com * Link https://levantoan.com/xoa-bo-product-category-va-toan-bo-slug-cua-danh-muc-cha-khoi-duong-dan-cua-woocommerce/ * */ // Remove product cat base add_filter('term_link', 'devvn_no_term_parents', 1000, 3); function devvn_no_term_parents($url, $term, $taxonomy) { if($taxonomy == 'product_cat'){ $term_nicename = $term->slug; $url = trailingslashit(get_option( 'home' )) . user_trailingslashit( $term_nicename, 'category' ); } return $url; } // Add our custom product cat rewrite rules function devvn_no_product_cat_parents_rewrite_rules($flash = false) { $terms = get_terms( array( 'taxonomy' => 'product_cat', 'post_type' => 'product', 'hide_empty' => false, )); if($terms && !is_wp_error($terms)){ foreach ($terms as $term){ $term_slug = $term->slug; add_rewrite_rule($term_slug.'/?$', 'index.php?product_cat='.$term_slug,'top'); add_rewrite_rule($term_slug.'/page/([0-9]{1,})/?$', 'index.php?product_cat='.$term_slug.'&paged=$matches[1]','top'); add_rewrite_rule($term_slug.'/(?: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_no_product_cat_parents_rewrite_rules'); /*Sửa lỗi khi tạo mới taxomony bị 404*/ add_action( 'create_term', 'devvn_new_product_cat_edit_success', 10); add_action( 'edit_terms', 'devvn_new_product_cat_edit_success', 10); add_action( 'delete_term', 'devvn_new_product_cat_edit_success', 10); function devvn_new_product_cat_edit_success( ) { devvn_no_product_cat_parents_rewrite_rules(true); }
Chú ý:
– Nhiều bạn không biết nhiều code thì copy đoạn code trên cho xuống cuối cùng file functions.php trong theme mà bạn đang dùng. Trước thẻ đóng ?> nếu có nhé. Không đến lúc lỗi 500 hay trang trắng lại không biết tại sao 😀
– Khi các bạn đã làm đường dẫn tính của danh mục sản phẩm về dạng này thì chú ý các link của bài viết hoặc page nhé. Nếu bị trùng slug thì sẽ dẫn đến sai đó ạ 🙂 điều này là tất nhiên rồi… Đều là chữ A không thể bắt mình đọc là chữ B được ạ
Chú ý quan trọng:
Nếu website của các bạn đã chạy 1 thời gian trước đây rồi. Và đã được google index link của danh mục sản phẩm rồi mà bây giờ muốn chuyển sang dạng url rút gọn này và không muốn mất đi thứ dạng google thì hãy comment bên dưới. Mình sẽ giúp các bạn giải quyết vấn đề đó (Không free nhé)
Chúc các bạn SEO lên top 🙂 không hiểu chỗ nào hoặc lỗi thì comment bên dưới mình giải đáp nhé
- Bình luận