Bài viết này mình sẽ hướng dẫn bạn cách để xóa custom post type slug ra khỏi đường dẫn. Thực sự mình KHÔNG hề thích phải làm cái này, phải xóa đi cái mặc định của WordPress mà cả WordPress và mình đều KHÔNG khuyên dùng. Bởi vì thực sự nó sẽ ngắn hơn chứ không có tác dụng gì cho SEO cả, mà thậm chí nó lại để lại nhiều tác dụng phụ vô cùng bất cập. Vậy nên trước khi áp dụng, bạn hãy nên nghe lời khuyên của mình là DỪNG LẠI đừng xóa custom post type slug ra khỏi đường dẫn làm gì cả, đừng nghe mấy ông dạy SEO cố tìm điều gì khác lạ để dạy cho học viên để tạo sự khác biệt, haizz, nó không có lợi hơn cho SEO đâu chỉ có bất cập hơn thôi!
Code:
Giải thích:
Chúng ta sử dụng hàm pdvn_remove_slug để check xóa đi slug ra khỏi đường dẫn. Tuy nhiên như thế vẫn chưa đủ vì bây giờ bạn sẽ nhận được một trang 404 vì WordPress chỉ hy vọng các bài viết và các trang sẽ hoạt động theo cách này. Chúng ta sẽ cần thêm hàm pdvn_parse_request.
Vậy là chúng ta đã xóa custom post type slug ra khỏi đường dẫn thành công. Nếu bạn nào có thắc mắc hay góp ý nào hãy để lại bình luận bên dưới, mình sẵn sàng cùng thảo luận với bạn 😀
Mình có một trang web đã làm theo code của bạn và chạy rất ổn. Mình muốn hỏi thêm cách để chèn slug của danh mục vào url sau khi đã xóa slug. Cụ thể:
Chi tiết bài viết của CPT: /ten-danh-muc/tenbaiviet
Trang danh mục của CPT: /ten-danh-muc
Không biết là bạn có cách nào để xử lý không ạ?