Xóa bỏ product-category và product , toàn bộ slug trong woocommerce

Nhiều bạn sử dụng wordpress có dùng woocommerce bán hàng online và muốn rút gọn URL cho tối ưu và chuẩn SEO . Bởi SEO hiện giờ cạnh tranh quá nên mỗi vấn đề nhỏ là một yếu tố cạnh tranh với đối thủ rất lớn.

Xóa bỏ product-category và product

Nhưng bạn đừng lo , bài viết dưới đây sẽ giúp bạn xóa bỏ những cái đường dẫn product hay product-category của sản phẩm . Bù lại bạn cần phải cẩn thận với yêu cầu là : nội dung bài viết không được trùng với URL của tên sản phẩm nhé .

Loại bỏ đường dẫn Product hay san-pham , cua-hang trong woocommerce

Trước tiên các bạn dán đoạn code sau vào file functions.php của theme đang sử dụng. Sau đó hãy update lại permalink (Setting -> Permalinks -> Save changes) và thưởng thức thành quả.

Chú ý:

  1. Copy và dán đúng cú pháp PHP. Nhiều bạn có cái dấu mở PHP (<?php) tống cả vào mà không để ý rồi lỗi cả web cứ inbox bảo code làm sao … em buồn lắm các bác ạ 🙂
  2. Tại dòng số 11 trong code bên dưới đang để là /cua-hang/ các bạn thay chữ đó thành slug hiện tại của web… vào Setting -> Permalink để kiểm tra slug hiện tại là gì (thường là /product/ hoặc /shop/ …)

Mình sẽ giải thích 1 chút xíu về hàm trên. Function devvn_remove_slug hook vào post_type_link  sẽ giúp chúng ta xóa bỏ chữ product trong đường dẫn. Nhưng khi truy cập vào đường dẫn đó sẽ bị 404 vì vậy ta phải có thêm function devvn_woo_rewrite_rules để rewrite, sẽ không còn bị 404 nữa.

Chú ý: Mặc định slug là product. Nhưng có thể slug đó đã bị thay đổi trước đó. bạn hãy kiểm tra xem slug hiện tại là gì rồi thay vào phía trên cho đúng nhé.

Xóa bỏ  product-category và toàn bộ slug cha con

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.

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 ạ

Nguồn

Lê Văn Toàn

Minh Dương

Yêu công nghệ và thích thú tìm kiếm . Những theme mang tính chất chia sẻ không buôn bán dưới mọi hình thức .Các bạn share và like nếu cảm thấy nó có ích . Hãy chia sẻ cho nhiều người để cùng nhau trải nghiệm theme mới nhé. Link download nếu bị die hãy liên hệ mình ngay để mình sửa lại nhé .