如何在wordpress中更改标记网址

时间:2016-03-17 13:02:41

标签: php wordpress

我从像这样的wordpress标签中获取网址

www.xxxxxx.com/?tag=chromatography

但我想这样

www.xxxxxx.com/?s=chromatography

有人可以告诉我如何更改从标签生成的网址设置?

任何帮助都很明显

1 个答案:

答案 0 :(得分:0)

您可以在本地.htaccess文件或主Apache VirtualHost文件中使用URL重写(documentation)(假设您使用的是Apache)。

这应该可以解决问题:

RewriteEngine On
RewriteCond %{QUERY_STRING} s=(.+)
RewriteRule ^/?(index.php)?$ /?tag=%1 [R,L]

以上意味着访问 http://yoursite.com/index.php?s=chromatography http://yoursite.com/?s=chromatography 的任何人都会在地址栏中看到该网址,但Wordpress会将其理解为含义 的 http://yoursite.com/?tag=chromatography

因此标签行为将按预期运行。

要更改wordpress本身为标记提供的网址,您可以应用filter,如get_tag_link的文档中所述。

为此,请在主题的functions.php文件中添加如下内容:

function my_custom_tag_link($taglink, $tag_id) {
  return str_replace($taglink, '?tag=', '?s=');
}
add_filter('tag_link', 'my_custom_tag_link', 10, 2);

N.B。 PHP代码未经过测试,但据我所知,应该可以解决这个问题。