如果类别与程序代码匹配,我需要我的 URL 中的第一个子目录重写为查询字符串 URL,即:4 个大写字符,例如 AUBU
例如,我需要:
http://www.georgiancollege.ca/devprograms/AUBU/
重写为:
http://www.georgiancollege.ca/devprograms/index.php?page_id=16&major=AUBU
但我不希望它影响当前的 URL,例如
http://www.georgiancollege.ca/devprograms/a-to-z/
不应重写为:
http://www.georgiancollege.ca/devprograms/index.php?page_id=16&major=a-to-z
这是我到目前为止所拥有的,根本不起作用。(基于:http ://thereforei.am/2011/10/28/advanced-taxonomy-queries-with-pretty-urls/ )
function eg_add_rewrite_rules() {
global $wp_rewrite;
$new_rules = array(
'(.+)/?$' => 'index.php?page_id=16&major=' . $wp_rewrite->preg_index(1)
);
$wp_rewrite->rules = $new_rules + $wp_rewrite->rules;
}
add_action( 'generate_rewrite_rules', 'eg_add_rewrite_rules' );
更新:上面的代码现在重定向到正确的页面,但在那个页面上我无法读取查询字符串,可能是因为 URL 重写查询字符串不在最后一页上......
所以使用,
$program = $_GET['major'];
不返回主要代码...