Use Tags to initiate Search

时间:2017-05-18 作者:Jan Lenzen

首先,我是Wordpress和PHP的新手,如果这是一个基本问题,我深表歉意。我安装了Wordpress,每篇文章都用标签标记,这些标签包含以下链接:

href=domain.com/index.php/tag/TAGNAME
但我希望链接是:

href=domain.com/index.php/search/TAGNAME
据我所知,我需要改变get_tag_link() 但所做的就是使用get_term_link() 然后我完全迷路了。是否有一个函数If(tag){ return "/tag/"} 我可以修改哪个?我使用的主题将此函数用于“面包屑”http://dimox.net/wordpress-breadcrumbs-without-a-plugin/ 但我不知道这是否与我有关。

非常感谢你。

3 个回复
SO网友:rheeantz

你只需要改变你的Tag base 在网站的永久链接设置中。

enter image description here

PS:默认情况下/search/是搜索结果页的slug。为了避免与搜索结果页发生冲突,您可能还需要重写搜索url。检查此页面以重写搜索url

https://bavotasan.com/2011/rewrite-search-result-url-for-wordpress/

SO网友:Jan Lenzen

我现在使用了一种变通方法。我编辑了category\\u模板。带有str\\u replace函数的php。问题是,标记云使用的函数与常规标记不同。我刚刚添加了以下内容:

foreach ( $tags_data as $key => $tag_data ) {

$class = $tag_data[\'class\'] . \' tag-link-position-\' . ( $key + 1 );
 $a[] = "<a href=\'" . str_replace("/index.php/tag/","/index.php/search/",esc_url( $tag_data[\'url\'] )) .(...)
}
要wp\\u generate\\u tag\\u cloud(),请执行以下操作:

$the_tags = str_replace("/index.php/tag/","/index.php/search/",$the_tags);
到\\u标记()。正如bevor所说,我对这一点还不熟悉,我不认为这是应该的,但它现在起作用了。如果有人也想使用它,我会将其与BeTube主题一起使用。

谢谢你的回答。

SO网友:WebElaine

您可以在中重写URL。htaccess:

RewriteEngine On
RewriteRule ^tag/(.*)$ http://example.com/search/$1 [R=301,L]
将其置于默认WP之上。htaccess内容和替换示例。com与您的实际域。

结束

相关推荐

函数.php出现问题..喜欢

对不起,如果你在上显示我的博客autodhil.com 有问题的原因在我的博客顶部有一个错误的纸条。。以便显示此通知:Deprecated mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. in /home/autodhil/public_html/wp-content/themes/sahifa2/functions.php on line 60 我真的不知道如