Thay đổi permalinks trong WordPress mà không gây ra lỗi 404.
Permalinks hay cấu trúc đường dẫn tĩnh là một trong những vấn đề quan trọng, ảnh hưởng đến khả năng SEO của một blog/ website WordPress. Thông thường, để SEO tốt, người ta sử dụng các cấu trúc đường dẫn tĩnh có khả năng chứa từ khóa cần SEO. Và kể từ phiên bản 4.2 trở đi, WordPress cũng đã tự động kích hoạt permalinks đáp ứng được nhu cầu đó. Tuy nhiên, nếu bạn muốn thay đổi cấu trúc đường dẫn tĩnh, chẳng hạn từ dạng /post-name/ sang /category/post-name/ để trông “đẹp mắt” hơn thì sao? Những links bài viết mà bạn đã chia sẻ lên mạng xã hội, diễn đàn… trước đó sẽ bị lỗi 404. Điều này hoàn toàn không có lợi cho SEO. Vậy đâu là giải pháp?
Tham khảo thêm:
- Cấu trúc permalink nào là tốt nhất cho blog WordPress?
- Những việc bạn cần làm ngay sau khi cài đặt WordPress
Thật may mắn, WordPress luôn có sẵn những plugin tuyệt vời giúp bạn giải quyết mọi vấn đề rắc rối đang gặp phải. Và plugin mà tôi đang muốn nhắc tới trong bài viết này chính là Simple 301 Redirects.
Khắc phục lỗi 404 khi thay đổi permalinks trong WordPress
1. Đầu tiên, như thường lệ, công việc của các bạn là cài đặt và kích hoạt plugin Simple 301 Redirects.
2. Tiếp theo, truy cập vào Settings => Permalinks và thay đổi cấu trúc đường dẫn tĩnh theo ý muốn của bạn. Ghi nhớ cấu trúc cũ và mới để sử dụng trong bước tiếp theo.
3. Truy cập vào Settings => 301 Redirects. Tại đây, hãy thực hiện tuần tự các bước như sau:
- Điền cấu trúc permalinks cũ vào mục “Request“.
- Điền cấu trúc permalinks mới vào mục “Destination“.
Click vào nút “Save Changes” để lưu lại các thiết lập.
4. Thử click vào một link bài viết mà bạn đã từng chia sẻ trên mạng xã hội, diễn đàn… xem nó đã tự động redirect về cấu trúc link mới hay chưa nhé. Nếu rồi thì có nghĩa là bạn đã thực hiện thành công. Thật dễ dàng phải không nào?
Hy vọng, với thủ thuật nhỏ này, các bạn sẽ nhanh chóng khắc phục được lỗi 404 khi thay đổi permalinks. Mọi thắc mắc liên quan đến permalinks của WordPress xin vui lòng gửi vào khung bình luận bên dưới để được hỗ trợ và giải đáp.
Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)
Hôm nào Hiếu làm bài hướng dẫn về zip theme đi, có giao diện ngon muốn lấy mà ko biết làm sao
Mình không hướng dẫn các vấn đề liên quan đến “trộm cắp” sản phẩm hay ý tưởng của người khác bạn nhé. Làm thế chẳng khác gì… “tự bóp” cả. :P
Thay đổi vậy có ảnh hưởng SEO không bác ?
Tuỳ việc bạn thay đổi thành dạng cấu trúc đường dẫn nào nữa chứ. :)
Đổi thế này có ảnh hưởng đến việc tìm kiếm của google ko bạn Hiếu nhỉ?
Để permalinks như site của bạn hiện giờ là phù hợp rồi đó. Không cần đổi nữa. Nếu đổi thì áp dụng plugin mình hướng dẫn trong bài viết là ok. :)
Hehe bạn Hiếu đã nói thế thì mình không cần đổi làm gì nữa. Nhưng mà mấy plugin bạn giới thiệu mình thấy hay hay đều tải về mà chưa dùng nên chưa kích hoạt, không biết để thế có ảnh hưởng gì không?
Cái nào không dùng thì bạn xóa đi, lúc cần thì cài lại. Nó luôn có sẵn trên thư viện của WordPress mà. :)
ok mình hiểu rồi, cảm ơn Hiếu :)
em đổi theme và đổi đường dẫn thành *.html thì link cũ có die ko nhỉ, và đổi theme có ảnh hưởn nhiều đến seo ko ạ, tính chuyển theme sahifa để hạn chế sử dụng plugin, theme genesis thì ngon rồi, nhưng e chưa biết code nhiều nên toàn chơi plugin, đến khi chuyển host lỗi tè le.
Link cũ sẽ bị lỗi 404 nhé. Bạn làm theo hướng dẫn trong bài viết để redirect là được. Đổi theme sẽ ảnh hưởng đến SEO nhé, tiêu cực hay tích cực thì còn tùy vào chất lượng theme mà bạn đổi. Nhưng nhìn chung thời gian đầu sau khi đổi theme, phần lớn từ khóa sẽ bị tụt hạng, sau đó có thể khôi phục trở lại. Mình đang định tổ chức chương trình “mua chung” theme Sahifa. Không biết có bạn nào muốn tham gia không? :D
có phải chờ bao lâu để cập nhật ko bác, em làm mà nó ko đc, vẫn vị lỗi 404
Có hiệu lực ngay mà. Hay là bạn điền cấu trúc permalinks không đúng? :P
theo em đổi sẽ ảnh hưởng đôi chút rồi, hehe
Cũng may mà link mình đặt lại được ngay từ đầu rồi :D
À klq nhưng BlackBerry mới update đã cho chạy SSL Let’s Encrypt rồi bạn Hiếu ạ, mừng quá :P
Yeah! :D Quá ngon cho đội bán lon. :D
em làm đúng mà http://sanvoucher.com/wp-content/uploads/2016/05/loi.jpg
Quái lạ. Đã lưu thiết lập chưa? Xóa cache chưa? Mình test thấy redirect ầm ầm. Có khi nào nó bị conflict với plugin nào đó cũng có chức năng redirect hoặc file .htaccess của bạn?
ko có bác, tất nhiên là lưu rồi, e mới chuyển sang vps nginx nên, cũng ko có plugin nào hết. hixx chả biết sao nữa, sáng giời tập cài ssl từ letsencrypt vật vã mãi ko đc, giờ đến cái thằng này nữa
Nginx chính là vấn đề. Có vẻ plugin này chỉ hoạt động được trên các máy chủ hỗ trợ .htaccess. Mà Nginx thì lại không. :P
OMG có cái nào chạy đc cho thằng Nginx ko bác
Cái này thú vị.Nhưng không biết có bị gì không?
Không liên quan nhưng anh Hiếu cho em hỏi là Mấy cái cài viết cùng chuyên mục ở giữa bài viết của anh là chèn tự động hay bằng tay ạ, em nhìn nó hay mà sát với bài quá
Mình chèn bằng tay bạn ạ. Không dùng plugin. :)
Hi Hiếu
Sau khi redirect xong thì sau bao lâu link mới được cập nhật ?
Mình thử một số link của mình cũng khá lâu (khoảng 30′) rồi mà vẫn chưa thấy đc cập nhật?
Ví dụ link này:
http://www.namphuongwindow.com/cac-loai-cua/cua-so/cua-so-mo-truot/
Có hiệu lực ngay bạn nhé. Nếu nó không redirect được thì có nghĩa là gặp vấn đề rồi đấy. :P
Có thể là vấn đề gì hả bạn? Có thể nói rõ hơn giúp mình đc ko?
Có thể nó bị conflict với một plugin nào đó mà bạn đang sử dụng. :P
Mình muốn bỏ catalogy ở link trên trang thì làm thế nào
Cái này plugin Yoast SEO có hỗ trợ tính năng loại bỏ rồi mà bạn. Bạn có thể tham khảo trong bài viết này nhé: https://wpcanban.com/wordpress/thu-thuat-wordpress/loai-bo-chu-category-trong-duong-dan-cua-wordpress.html
Sau khi setup để post có đuôi .html nhưng bị dính ngay lỗi 404.
Cụ thể:
Link mặc định: http://denlednhat.com.vn/mua-den-led-nhat-chinh-hang/
sau khi setup để có link: http://denlednhat.com.vn/mua-den-led-nhat-chinh-hang.html
Thì bị dính lỗi 404. Hoang mang quá vì lỗi này cũng ảnh hưởng tới SEO thế là em làm 1 động tác là .htaccess cho em nó quay về trang chủ đã. Sau này ông gg hỏi thì mark fix là xong.
Sau đó lên mạng hỏi rất nhiều site nhưng chả có admin nào trả lời cả, toàn hướng dẫn update lại permalink rồi .htaccess. Nhưng em dùng NGINX trên server nên .htaccess cũng không có tắc dụng.
Em nghĩ đặt lại mặc định hết xem sao, ô hay quá. thế là em nó đã hết lỗi 404.
Giờ mới set đến từng cái.
/%postname%.html: để bài viết có đuôi .html
còn page thì chưa có đâu nha, cũng chẳng cần page có html làm gì.
Product Permalinks: đây là đối tượng chính gây nên lỗi 404 khi vào mục tin tức, vì trước đó em đặt là: /%product_cat%/
Còn mặc định là: sản phẩm.
Vậy đấy, trở về nguyên trạng thấy sung và sướng quá. Chia sẻ với các bác luôn để nếu dính vào trường hợp như em thì tự xử cho lành.
Cảm ơn bạn đã chia sẻ. :)
Cảm ơn bạn rất nhiều nhưng
Mình đã thử cách của bạn nhưng đường dẫn của mình dạng
/%year%/%monthnum%/%day%/%postname%/ >>>> %postname%/ thì không được
nó thành
/%year%/%monthnum%/y%/%postname%/ >>>> %postname%/
Vẫn 404 .. Hình như plugin này không đổi được đường dẫn dạng này phải không bạn.
Cái này mình chưa test thử nên cũng không rõ. :)