当前位置:首页>WordPress建站>基础教程>修改WordPress搜索结果的链接样式

修改WordPress搜索结果的链接样式

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

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

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

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

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

//修改搜索结果的链接
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)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
欢迎关注WordPress大学公众号 WPDAXUE
基础教程

更改/移除WordPress作者存档页面的前缀“author”

2013-6-22 8:28:05

基础教程

在所有WordPress文章底部添加自定义内容

2013-6-25 7:06:07

12 条回复 A文章作者 M管理员
  1. 用了这种样式后,搜索中文就搜不到结果了,不用就能搜到,什么情况,能解决吗。。。。

    • 能够通过编写伪静态规则解决吗,不过我也不知道怎么编写伪静态规则。。。求指教

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

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

    多谢啦!

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

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

  4. 好像你自己都没用

  5. 这段代码有问题的,?s 和/search/ 后者好像搜索不到内容标题关键字的,你试下~

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

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

    • 倡萌

      感谢回复。 可是默认主题和停用插件都已经试过了, 还是那样的问题

    • 那就要考虑到底是不是服务器的问题

    • 或者也有可能是数据库问题

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索