2012-09-01 48 views
7

Tôi đang cố thêm các quy tắc tùy chỉnh bằng cách sử dụng hàm add_rewrite_rule của wordpress, nhưng chúng không hoạt động. Điều kỳ lạ là các quy tắc được thêm vào và khớp với URL của tôi bất cứ khi nào tôi kiểm tra chúng bằng trình phân tích Monkeyman Rewrite Analyzer.Wordpress add_rewrite_rule cho trang chuyển hướng không chính xác

Khi tôi cố gắng truy cập trang, nó chuyển hướng đến vị trí không chính xác.

Đây là mã của tôi:

add_rewrite_tag('%cc%','([a-zA-Z]+)'); 
add_rewrite_tag('%id%','([0-9]+)'); 

add_rewrite_rule('job-details/([0-9]+)$', 'index.php?pagename=jobs&cc=show&id=$matches[1]', 'top'); 

global $wp_rewrite; 
$wp_rewrite->flush_rules(); 

Đối với các URL của tôi, nếu tôi cố gắng truy cập vào URL site.com/job-details/1, nó chuyển hướng tôi đến/jobs /, đó là trang liên kết với plugin của tôi.

Đây là tập tin .htaccess tôi

RewriteEngine On 
RewriteBase/

RewriteRule ^index\.php$ - [L] 

# uploaded files 
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L] 

RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 
RewriteRule . index.php [L] 
+3

thêm độ phân giải của bạn làm câu trả lời cho bài đăng của chính bạn (bạn được phép thực hiện việc này). – ChelseaStats

+0

vui vì bạn làm cho nó hoạt động ... gửi câu trả lời của bạn và aprrove nó mate .. –

+1

Xin vui lòng gửi chỉnh sửa của bạn như là một câu trả lời. – BoltClock

Trả lời

2

Hóa ra rằng kịch bản của tôi đã sử dụng một chức năng tùy chỉnh để lấy các thông số GET qua đối tượng $ _REQUEST, mà đã bị vô hiệu hóa bởi wordpress.

Tôi đã sử dụng mã sau để lấy mã thay thế.

global $wp_query; 
$wp_query->query_vars['cc'];