Bộ lọc Route
Bộ lọc Route cho phép bạn thay đổi các URL do XenForo tạo ra để phù hợp hơn với nhu cầu của bạn.
Cảnh báo
Bộ lọc Route là một tính năng nâng cao. Tạo cấu trúc URL mơ hồ có thể ngăn truy cập vào các trang khác. Bạn nên kiểm tra kỹ các thay đổi của mình sau khi thiết lập bộ lọc route.
Route là gì?
Route là cụm từ của XenForo cho một phần của URL mà XenForo sử dụng để xác định trang cần tải. Tùy chọn Use Full Friendly URLs sẽ ảnh hưởng đến URL nhưng không ảnh hưởng đến route thực tế. Tuy nhiên, các tùy chọn khác có thể ảnh hưởng đến route thực tế được tạo.
Ví dụ, nếu bạn đã cài đặt XenForo vào http://example.com/community/
, các ví dụ sau làm nổi bật phần route của URL được in đậm:
- http://example.com/community/index.php?threads/example.1/
- http://example.com/community/threads/example.1/
- http://example.com/community/index.php?threads/example.1/page-2
- http://example.com/community/threads/example.1/page-2
- http://example.com/community/index.php?threads/example.1/&example=query
- http://example.com/community/threads/example.1/?example=query
Các ví dụ hiển thị index.php?
sẽ là URL không bật URL thân thiện. Bạn có thể sử dụng hướng dẫn này để xác định route cho bất kỳ URL nào.
Xác định bộ lọc route
Một bộ lọc route tiêu chuẩn là hai chiều. Nó thay đổi các URL được tạo ra thành phiên bản được chỉ định của bạn và sau đó, khi người dùng tải URL đó, nó sẽ chuyển đổi nó trở lại phiên bản XenForo chuẩn để nó có thể được xử lý. Như vậy, giá trị Find Route nên là route XenForo tiêu chuẩn và giá trị Replace With phải là những gì bạn muốn route hướng đến.
Cả hai trường tìm và thay thế đều có thể có wild card. Wild card có một trong các dạng sau:
{name}
- điều này sẽ khớp với bất kỳ thứ gì khác ngoài/
{name:digit}
- điều này sẽ chỉ khớp các chữ số{name:string}
- điều này sẽ phù hợp với bất cứ điều gì trừ/
hoặc.
Các đại diện giống nhau phải nằm trong cả trường tìm kiếm và thay thế
Bộ lọc Route luôn luôn phù hợp ngay từ đầu của route. Bộ lọc Route không phải khớp với toàn bộ gốc. Nó sẽ phù hợp với nhiều nhất có thể và để phần còn lại như vậy. Điều này có nghĩa là bạn có thể tập trung vào việc thay đổi chính xác những gì bạn muốn thay đổi mà không ảnh hưởng đến các phần cụ thể hơn của URL.
Để ngăn chặn lỗi, bộ lọc route phải luôn bắt đầu bằng route prefix không chứa đại diện. Về cơ bản, điều này có nghĩa là bạn không thể chỉ định một đại diện trước /
trong các trường tìm hoặc thay thế.
Nếu bạn muốn tạo bộ lọc route đơn hướng, bạn có thể chọn tùy chọn Incoming URL conversion only. Điều này có hiệu quả cho phép bạn chuyển hướng một route cũ đến một route mới mà không thay đổi giá trị của route mới. Nếu điều này được chọn, bất kỳ người dùng nào truy cập route phù hợp với giá trị thay thế sẽ được chuyển hướng đến giá trị tìm kiếm tự động.
Chú thích
Trình quản lý bộ lọc route và trình soạn thảo được tìm thấy trong phần Setup của admin control panel.
Ví dụ 1: Thay đổi tiền tố route
Các URL mặc định trong XenForo bằng tiếng Anh. Bạn có thể muốn thay đổi những thứ này bằng ngôn ngữ ưa thích của bạn. Ví dụ, trong tiếng Tây Ban Nha, "forums" là "foros". Để thiết lập bộ lọc route thực hiện việc này, bạn sẽ nhập:
- Find route:
forums/
- Replace with:
foros/
Điều này sẽ tự động khớp với tất cả các URL trong tiền tố route "forums", chẳng hạn như forums/example.1/
sẽ trở thành foros/example.1/
Một ví dụ khác, bạn có thể có add-on Resource Manager được cài đặt và bạn muốn gọi nó là Downloads. Bạn có thể chỉ cần thay đổi resources/
thành downloads/
Ví dụ 2: Thay đổi route node trang
Các node trang trong XenForo luôn có cấu trúc URL pages/page-name/
, nhưng có thể bạn có một hệ thống phân cấp các trang như:
- Parent (
pages/parent/
)- Child (
pages/child/
)- Grandchild (
pages/grandchild
)
- Grandchild (
- Child (
Với bộ lọc route, bạn có thể làm cho các URL của bạn cũng có một hệ thống phân cấp:
- Find:
pages/parent/
, replace:parent/
- Find:
pages/child/
, replace:parent/child/
- Find:
pages/grandchild/
, replace:parent/child/grandchild/
Ví dụ này cũng cho thấy cách bạn có thể xóa tiền tố pages/
từ các trang cụ thể.
Cảnh báo
Điều quan trọng là phải rất cẩn thận khi tên trang của bạn không can thiệp vào bất kỳ URL chuẩn nào. Nếu điều này ảnh hưởng đến URL chuẩn, điều này sẽ phá vỡ các địa điểm khác trong XenForo.