繁体   English   中英

在Wordpress中重写网址

[英]Url rewrite in Wordpress

我基本上有这个网址: http:// localhost:8888 / wordpress / products /?cat = cards

应该是: http:// localhost:8888 / wordpress / products / cards

我对Wordpress和url重写还很陌生,但是我发现了一些示例,显然您可以使用类似这样的php函数来完成此操作,现在我的问题是考虑到Wordpress已经使用/ products重写了url的重写规则? /,这使我对重写规则感到困惑吗?

function add_my_var($public_query_vars) {
    $public_query_vars[] = 'cat';
    return $public_query_vars;
}

add_filter('query_vars', 'cat');

function do_rewrite() {
    add_rewrite_rule('products/([^/]+)/?$', 'index.php?products=products&cat=$matches[1]','top');
}

add_action('init', 'do_rewrite');

如果您看一下https://codex.wordpress.org/Rewrite_API/add_rewrite_rule

它实际上并不执行重定向。 您可以将网址解析为wordpress查询变量。 因此,当您访问http:// localhost:8888 / wordpress / products / cards时 ,就和访问http:// localhost:8888 / wordpress / products /?cat = cards时一样。

所以对于你想要的。 如果您访问http:// localhost:8888 / wordpress / products / cards ,则应该可以在wordpress $ wp-> query_vars中访问猫

听起来您对http:// localhost:8888 / wordpress / products /?cat = cards重定向到http:// localhost:8888 / wordpress / products / cards的期望不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM