首页 / WordPress建站 / 基础教程 / 修改WordPress搜索结果的链接样式
Loading收藏0

我们都知道,WordPress搜索结果页面的默认链接是这样的:domain/?s=[search query],例如

1
https://www.wpdaxue.com/?s=wordpress入门

这样的链接实在是有些混乱,你可以将它修改为

1
https://www.wpdaxue.com/search/wordpress入门

只需要将下面代码添加到当前主题的 functions.php 文件即可:

1
2
3
4
5
6
7
8
//修改搜索结果的链接
function redirect_search() {
	if (is_search() && !empty($_GET['s'])) {
		wp_redirect(home_url("/search/").urlencode(get_query_var('s')));
		exit();
	}
}
add_action('template_redirect', 'redirect_search' );

注:需要主机支持伪静态(即支持 rewrite)

你可能还喜欢

12 条评论

  1. 用了这种样式后,搜索中文就搜不到结果了,不用就能搜到,什么情况,能解决吗。。。。

  2. hi,试了,有效果。不过,也出现个问题,不知道是不是BUG。求助,谢谢啦!

    当删除function。php里这段代码,再来搜索的时候,搜索的链接还是没有恢复成默认的样子。

    多谢啦!

  3. 倡萌,我最近在学制作wordpress主题。但他们的教程很多都没有具体说如何制作search.php。
    我知道search.php可以从archive.php页面拷贝过来,我主要是想问,比如我搜索“kkkkkk”,搜索结果页面显示“对不起,啥都没找到,换个关键词再试试?”
    这个返回效果如何实现?在哪里添加函数?这个函数是什么?

    1. 一般来说,你需要判断一下是否有结果,使用
      if ( have_posts() ) :
      如果有,就输出正常的循环,否则
      else :
      输出你想显示的任何内容,比如你上面说的
      最后,结束判断
      endif;

  4. 请教啊,我的站中文搜索关键字没有任何结果显示/引文正常 完全找不到解决的方法。向倡萌你求教求教 地址 jenniferbeals.cn

    1. 没遇到过,不知到底什么原因,建议你禁用所有插件,看看行不行,或者更换其他主题,检测是不是主题的问题,如果是主题问题,自己再检查到底是哪里出问题

发表评论

我们是靠谱的WordPress建站团队!

专业承接WordPress网站建设及运维、WordPress主题和插件开发、汉化、安装等服务

联系电话:0773-8282430

查看所有服务项目

视频教程: 点击联系我们
定制开发: 点击联系我们
售后支持: 点击联系我们
商务合作: 点击联系我们

固话:0773-8282-430

手机:133-0773-9152

微信扫一扫,联系我们