Pretty Permalinks

时间:2013-07-09 作者:Codarz360

我创建了自己的搜索功能,基本上可以找到与输入的邮政编码最近的商店。

我的搜索URL当前如下所示http://www.example.com/stores?searchTerm=London, 这并不是真正的SEO友好。我希望我的URL采用以下格式-http://www.example.com/stores/London, 然而,由于我缺乏WordPress URL重写工作的知识,我正在努力解决这个问题,希望能得到一些帮助来解决这个问题。

Stores是一个循环显示结果的页面。

如果有人对如何做到这一点有任何想法,或者可以为我指出正确的方向,那么将不胜感激。

1 个回复
SO网友:Krzysiek Dróżdż

您应该首先添加自己的自定义查询变量:

function add_search_store_query_var($vars) {
    $vars[] = \'search_store\';
    return $vars;
}
add_filter( \'query_vars\', \'add_search_store_query_var\');
然后添加重写规则:

function add_search_store_rewrite_rule() {
    add_rewrite_rule(\'stores/([^/]+)$\', \'index.php?page_id=<YOUR SEARCH PAGE ID>&search_store=$matches[1]\', \'top\');
}
add_action(\'init\', \'add_search_store_rewrite_rule\');
然后您可以使用get_query_var(\'search_store\'); 获取搜索词。

在检查之前,请记住刷新重写规则-如果没有刷新规则,它将无法工作。(只需转到永久链接设置并单击保存)。

顺便说一句,直接在这里编码,所以可能有点问题。

结束

相关推荐

Theme URLs problem

我编写了一篇主题文章(编辑:可能是single.php 模板)使用该函数get_userdata( $_GET[\'p\'] ). 但主管理员将URL重新格式化为:~/author/gamelaster (默认值为?author=1) 现在,这是不正确的工作。如何获取此URL格式的作者id?或如何从数据库中获取用户slug+get id?但是,我不能使用标准的author函数/post函数(get\\u ID等)。