【发布时间】:2018-03-02 00:58:14
【问题描述】:
我正在尝试将类别链接从查询转换为漂亮的 URL。
例如,我有类别“阿拉斯加”。
它的网址是https://www.mywebsite.com/category/alaska/
我使用以下链接从 url 获得一些查询:
https://www.mywebsite.com/category/alaska/?subscriber=1
我想将此 URL 转换为 Pretty URL (https://www.mywebsite.com/category/alaska/subscriber/) 并且还想为其显示自定义模板。
我试过这个代码:
试试 1
function my_template() {
if ( is_archive() ) {
if ( isset( $_REQUEST['subscriber'] ) ) {
$myurl = get_category_link();
if (substr($myurl) != "/") $myurl .= "/";
$myurl .= "subscriber/";
$myurl .= trim( sanitize_title_for_query( $_REQUEST['subscriber'] ) ) . "/";
exit( wp_redirect( $myurl ) ) ;
}
}
}
add_action( 'template_redirect', 'my_template_redirect' );
上面的代码对我不起作用。
我对 WordPress 中的 URL 重写没有足够的知识。
请帮帮我。
更新:
尝试2:
如comment by Oussama 中所述 我想出了这段代码:
function wallpaperinho_subcat_rewrite_rule() {
add_rewrite_rule('^category/([^/]*)/subscriber/?','index.php?page_id=305965&subscriber=1','top');
}
add_action('init', 'wallpaperinho_subcat_rewrite_rule', 10, 0);
上述函数有效,但我无法在自定义页面和函数中检测到当前类别 ID。有什么办法吗?所以我可以用不同的类别显示不同的数据。
【问题讨论】:
-
漂亮的网址是不是只有
abcedfghijklmnopqrstuvwxyz./:中的字符的网址? -
是的。我想将这些查询 URL 转换为 SEO 友好 URL
标签: php wordpress url-rewriting