知易通
第二套高阶模板 · 更大气的阅读体验

搜索推荐能不能自定义?来看看这个软件是怎么做的

发布时间:2025-12-09 17:18:19 阅读:317 次

公司新来的实习生小李,早上一来就对着电脑皱眉。他刚接手一个电商后台系统,客户提了个需求:首页的搜索推荐词,能不能按季节、促销活动自己调整?

他查了一圈,发现默认推荐全是系统自动生成的热门词,比如‘手机’、‘连衣裙’这种大路货。可现在正值端午节前,客户想把‘粽子礼盒’、‘咸鸭蛋’顶上去,结果根本没法改。

不是所有推荐都能动手调

很多人以为搜索推荐就是个黑盒子,搜得多就排前面。其实这背后分两种逻辑:一种是纯算法驱动,靠用户行为数据自动排序;另一种支持人工干预,可以手动置顶、屏蔽或插入特定关键词。

像小李用的那个系统,属于前者。没有开放接口,也没有管理面板,想改?只能等数据自然积累。可节日促销等不起啊。

我们做的小程序就换了种思路

去年给一家本地生鲜店开发搜索功能时,老板直接说:‘夏天必须把西瓜顶到第一位,谁搜水果都得先看见它。’

于是我们在后台加了个推荐词管理页,长这样:

<div class="recommend-editor">
  <input type="text" placeholder="新增推荐词" />
  <button>置顶</button>
  <button>删除</button>
  <ul>
    <li data-priority="high">西瓜 <span>(置顶)</span></li>
    <li>荔枝</li>
    <li>冷面</li>
  </ul>
</div>

运营人员每天花三分钟,拖一拖顺序,加个新品,搜索页就能跟着节奏走。冬天推羊肉,清明上青团,不用等算法反应。

技术上并不复杂

核心就是把静态配置和动态数据分开处理。用户搜索时,先查有没有人工设置的推荐词,有就优先返回,没有再走热度模型。

接口设计也很简单:

// 获取推荐词
GET /api/recommend?keyword=水果

// 返回示例
{
  "words": ["西瓜", "哈密瓜", "荔枝"],
  "source": "manual" // 标记来源,便于调试
}

只要在后台留个编辑入口,再加个生效开关,就能让运营掌握主动权。比起完全依赖点击率、转化率算出来的结果,这种半人工模式反而更贴近实际业务节奏。

后来那个生鲜店老板说,光是把‘西瓜’固定推荐,夏季搜索转化涨了快两成。算法再聪明,也猜不到人什么时候想吃瓜。