Cách thiết lập redirection rule sử dụng plugin redirection:

Khi thay đổi cấu trúc permalink (thay đổi cấu trúc thư mục, thay đổi plugin SEO…), chúng ta cần redirect các link bị thay đổi cấu trúc về URL mới. Các old link này có thể bị thay đổi theo một quy luật nào đó và lúc đó chúng ta có thể viết rule để apply cho tât cả các URL thuộc dạng đó thay vì sửa từng URL đơn lẻ. Dưới đây là một số ví dụ:

1. Ví dụ 1:

Cần redirect tất cả các url có dạng domain.com/abc/… thành: domain.com/shop/abc/…    (Thêm shop vào trước /abc)

URL nguồn: domain.com/abc/xyz

URL đích: domain.com/shop/abc/xyz

=> cần viết rule như sau:

URL nguồn:  ^/abc/(.*)   => Trong đó: ^ để wordpress hiểu là /abc được đặt ngay sau domain.com (tránh trường hợp infinite loop sẽ thành: domain.com/shop/shop/shop…); (.*): là bất cứ cụm ký tự đường dẫn nào ở sau đều được ghi lại và chuyển sang URL đích. 

URL đích: /shop/abc/$1/  => Trong đó: $1 – để lấy cụm đường dẫn ở URL nguồn (.*)

Trường hợp này hay gặp khi thay đổi cấu trúc thư mục hoặc sử dụng chức năng ignore base – bỏ các từ như shop/category của các plugin SEO (Rankmath/Yoast). Khi thay đổi plugin SEO sẽ làm cho các link này thành 404.

2. Ví dụ 2: 

Redirect URL có dạng: /năm/tháng/ngày/abc thành /abc 

Trường hợp này hay gặp khi chuyển permalink từ dạng ngày tháng sang URL cố định trong WordPress. 

URL nguồn: domain.com/2018/07/28/abc 

URL đích: domain.com/abc

Cần viết rule như sau: 

URL nguồn: ^/ \d{4}/ \d{2}/ \d{2}/(.*)  => trong đó (.*) được sử dụng để ghi lại cụm đường dẫn phía sau ngày tháng

URL đích: /$1/   =>$1 được dùng để hứng giá trị (.*)

Ref: https://redirection.me/support/redirect-regular-expressions/