Other Redirection script for SMF 2.0 - Chuyển hướng script cho SMF 2.0

PVS

Super Moderator
Thành viên BQT
Tham gia
28/02/2015
Bài viết
17,142
Được Like
12,745
Redirection script for SMF 2.0 - Chuyển hướng script cho SMF 2.0 1.0

Script này sẽ chuyển hướng URL của diễn đàn SMF tới XenForo.
Lý do mình không sử dụng .htaccess hoặc Nginx viết lại là bởi vì các chuyển hướng cần một số toán học đơn giản. Điều này không dễ thực hiện với .htaccess / nginx.

Yêu cầu bổ sung:
XenForo:
"Retain imported content IDs" trong quá trình import SMF.
"Use Full Friendly URLs" nên được kích hoạt trong XenForo.
"Include Content Title in URLs" có thể được kích hoạt nhưng nó sẽ cung cấp cho bạn một chuyển hướng thêm. (Cá nhân mình không thích Titles trong URL)

SMF:
Script này được thiết kế cho các URL SMF mặc định. Nếu bạn đã bật "Search engine friendly URLs" trong SMF, việc chuyển hướng sẽ không hoạt động với script này.

Cách dùng:

Thay thế SMF index.php của bạn bằng script chuyển hướng này và chỉnh sửa phần cấu hình.
Mình sẽ giả sử bạn đã cài đặt XenForo trong một thư mục mới. Điều này sẽ làm cho mọi thứ dễ dàng hơn nhiều!
Nếu bạn đã cài đặt SMF và XenForo trong cùng một thư mục, bạn sẽ cần phải thực hiện một số chuyển hướng thêm trong .htaccess / nginx lọc các yêu cầu SMF và hướng chúng tới script này.

Bạn nên thử nghiệm script này trước khi di chuyển thực. Đảm bảo mọi thứ hoạt động.

Cấu hình
Chỉ cần chỉnh sửa phần đầu của script để phù hợp với nhu cầu của bạn:
Mã:
$redir_url = 'https://www.domain.com/smf';  // URL of your new forum, without trailing slash
$forums = 'forums';                          // URL name of forums (only change this if you are using route filters)
$threads = 'threads';                        // URL name of threads (only change this if you are using route filters)
$posts = 'posts';                           // URL name of posts (only change this if you are using route filters)
$members = 'members';                       // URL name members (only change this if you are using route filters)
$threads_count = 10;                        // Make sure the number of threads is the same for SMF and XenForo.
$mode = 0;                                  // 0 = testing / 1 = temp redirect / 2 = perm redirect

Trước tiên, bạn nên sử dụng mode = 0 để xem chuyển hướng đang làm gì, sau đó bạn có thể sử dụng mode = 1 để kiểm tra thực tế. Sau đó, nếu tất cả mọi thứ là tốt, sử dụng mode = 2.

Ví dụ chuyển hướng

Boards
http://www.domain.com/smf/index.php?board=5.20
to
http://www.domain.com/xenforo/forums/5/

Messages
https://www.domain.com/smf/index.php?msg=123
thành
https://www.domain.com/xenforo/posts/123/

https://www.domain.com/smf/index.php?topic=10.msg123
thành
https://www.domain.com/xenforo/posts/123/

Topics
https://www.domain.com/smf/index.php?topic=10.110
thành
https://www.domain.com//xenforo/threads/10/page-12

Profiles
https://www.domain.com/smf/index.php?action=profile;u=123
thành
https://www.domain.com/xenforo/members/123/

Chúc các bạn thành công.


Nguồn: xenforo.com​
 

Đính kèm

  • smf_redirect.php
    2.8 KB · Lượt xem: 2

Top Bottom