Nhằm chống lại sự dài dòng =)) của đường link category trong WordPress, mà mặc định nó là “home/category/name/” thì tôi đang dùng một custom code để làm việc này, tuy nhiên các bạn cũng hoàn toàn có thể làm được điều tương tự với một plugin của WordPress. Khoan hãy nhắc tới plugin đó, giờ ta bàn lý do tại sao chúng ta nên xóa nó:

Xóa Category Base ra khỏi đường dẫn của WordPress
Trước hết, dưới góc độ của một người làm seo như tôi thì đường link càng dài tôi càng ghét, đúng hơn là càng sâu thì càng không có lợi, vì Google nó sợ các đường link bẫy con bọ của nó, ví dụ như các đường link sâu /home/a/b/c/d/Random/ thì nó vừa mất thời gian lại tốn công sức, vì thế càng sâu thì nó càng thận trọng, nên càng gần đầu và càng nông càng tốt.
Lý do thứ hai là bạn ghét nó, thế thôi ! Nhiều khi cảm thấy thừa thãi !
Cài đặt
Trên WordPress Plugin Directory có khá nhiều plugin có thể trợ giúp bạn trong việc xóa Category Base trong đường dẫn, các bạn có thể tham khảo:
1. Remove Category Base: https://wordpress.org/plugins/remove-category-url/
2. WP no category Base: https://wordpress.org/plugins/wp-no-category-base/
Cả hai cái đều làm việc dưới một nguyên tắc là xóa đoạn /category/ trong rewrite tag, làm cho WordPress hiểu đường dẫn category chỉ có /category-name/ thôi.
Sử dụng plugin Yoast SEO
Plugin Yoast SEO rất thân thuộc với chúng ta, gần đây đã cung cấp chức năng này trong plugin, các bạn có thể kích hoạt nó lên bằng cách:
Truy cập SEO > Advance > Permalinks và bật nút xóa chữ Category đi:

Bật xóa chữ Category trong đường link
* Lưu ý là để điều chỉnh lại đường dẫn không có category base trong Menu hoặc trong toàn bộ link trên trang, ta dùng hàm hack sau cho vào trong file functions.php nhé:
/* xóa đường link của category */
function _nice_category_link($link) {
return str_replace('/category/', '/' , $link);
}
add_filter('category_link', '_nice_category_link');
Và bây giờ thử truy cập đường link của Category và thưởng thức thành quả mới nào !
Chúc các bạn thành công !
Cái này xài .htaccess là được mà. Cần gì ném nó vào functions.php làm chi cho mệt. 😛
Tùy yêu cầu chứ, mỗi cách sử dụng với mục đích khác nhau mà 🙂 Nếu ông viết plugin cho phép admin bỏ nó hoặc sử dụng nó thì thao tác qua .htaccess làm gì !
P/s: bác Hiển nhà ta là dân thích code nữa 🙂
.HTACCESS sao mà can thiệp được pồ ? Dùng code lọc luôn nó đi có phải nhàn hơn không 😀
Đào mồ nội dung hả ông ? tưởng cái này nó liệt vào dạng “dữ liệu cổ rồi chứ” 🙂
dùng plugin cho lẹ
Bài này có lý nè. nhưng dùng Plugin thì hơi nặng cho web, có cách nào hay hơn không Jamviet. Để mình thử
Không nặng đâu bạn, thực ra nó chỉ thay đổi cái rewrite của core thôi, không truy vấn SQL, không dùng các hàm nặng của PHP
Mình thấy có cách nữa mà không phải cài plugin này. Chia sẻ cho mọi người cùng biết thôi 🙂
http://hamrongmedia.com/loai-bo-category-trong-url-trong-wordpress-moi-nhat/
Rất hay, thanks nhé.
nhưng nó lại mất luôn các bài viết trong category đó luôn, ví dụ như vậy nhé.
Mình có mục CLIP trong clip có clip 1 và clip 2, khi mình click vào category CLIP thì nó sẽ hiện …/category/clip và nội dung bài viết trong tất cả các mục clip 1 và clip 2, nhưng khi làm xong, thì mình click vào thì nó ra trang ERROR 404 NOT FOUND. chỉ click vào clip 1 hoặc clip 2 mới có bài viết thôi.
Mình muốn mất category nhưng khi click vào vẫn còn nội dung trong category nhỉ.
Thanks
Hình như chỉ cần cái này của Bác là được rồi. Ko cần cài 2 plugin trên thì phải:
function _nice_category_link($link) {
return str_replace(‘/category/’, ‘/’ , $link);
}
add_filter(‘category_link’, ‘_nice_category_link’);
Cái đó chỉ xóa chữ category khỏi link thôi chứ không có tác dụng gì nếu không kết hợp với hàm khác nhé !
Anh Jam Việt ơi! Anh cho em hỏi: em cũng đã sửa lại code đường dẫn wordpress lại rồi!
Nhưng nó chưa hiển thị đúng, em muốn đường dẫn sản phẩm như dạng: https://www.domain/laptop/lenovo-ideapad-100-14iby-n2840-2gb-500gb-win10
Anh giúp em với ạ
Em cảm ơn Anh nhiều ạ!
Xin chào bạn, nếu mình muốn như bạn thì mình có thể làm được ngay bằng cách viết plugin can thiệp vào hệ thống hoặc cấu hình lại đường dẫn, tuy nhiên đường dẫn có ảnh hưởng ít tới SEO, cho nên bạn có thể để theo mặc định và tương đối, bạn sẽ tiết kiệm thời gian làm được việc khác !
Chúc bạn thành công !
dạ, Em công nhận Anh nói rất chính xác.
thôi giờ em dùng cái có sẵn vậy!
Anh có biết cái plugin nào mà có thể remove “product” hoặc “shop” trong url không Anh!
Chỉ em với ạ!
Nếu xóa đi, có thể chúng sẽ nhầm nhọt giữa bài đăng Post và Sản phẩm, vì thế không xóa được !
Chào cả nhà!
Trước mình tạo website cũng không biết là có thể bỏ được “category” trong ULR mình cứ tưởng đó là bắt buộc trong WP. Hiện trang của mình anh Google đã index khoảng 768 link, nếu bây giờ mình loại bỏ category thì có ảnh hưởng gì đến SEO không?
Mong mọi người giúp đỡ. trang của mình là : http://hyundai-ngocan.com
Chẳng sao cả, nó sẽ redirect tự động từ link cũ về, bạn có thể chuyển đổi thoải mái nhé !
Cảm ơn Bác “Jam Việt” nhiều nha, bây giờ mình phải bắt tay vào làm phát thôi.
Chúc Blog luôn phát triển.!
Bấm vào link category sau khi thêm hàm vào funtions.php thì nó báo lỗi 404 bạn ơi!
Anh Cho em hỏi cấu trúc đường dẫn url của em là http://nguyenmanhtu.info/blog/mau-chuyen-nho khi vào bất cứ chuyên mục hay bài viết nào thì đều có tenmien/blog/chuyên mục hoặc tenmien/blog/bài viết.
em muốn xóa /blog đi thì làm cách nào ạ?
em cảm ơn
Em sử dụng yoat seo xóa category trong đường link được rồi, có nhất thiết cần phải chèn code vào file functions.php nữa không bác. Em cảm ơn!