公司新来的实习生小李,早上一来就对着电脑皱眉。他刚接手一个电商后台系统,客户提了个需求:首页的搜索推荐词,能不能按季节、促销活动自己调整?
他查了一圈,发现默认推荐全是系统自动生成的热门词,比如‘手机’、‘连衣裙’这种大路货。可现在正值端午节前,客户想把‘粽子礼盒’、‘咸鸭蛋’顶上去,结果根本没法改。
不是所有推荐都能动手调
很多人以为搜索推荐就是个黑盒子,搜得多就排前面。其实这背后分两种逻辑:一种是纯算法驱动,靠用户行为数据自动排序;另一种支持人工干预,可以手动置顶、屏蔽或插入特定关键词。
像小李用的那个系统,属于前者。没有开放接口,也没有管理面板,想改?只能等数据自然积累。可节日促销等不起啊。
我们做的小程序就换了种思路
去年给一家本地生鲜店开发搜索功能时,老板直接说:‘夏天必须把西瓜顶到第一位,谁搜水果都得先看见它。’
于是我们在后台加了个推荐词管理页,长这样:
<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" // 标记来源,便于调试
}
只要在后台留个编辑入口,再加个生效开关,就能让运营掌握主动权。比起完全依赖点击率、转化率算出来的结果,这种半人工模式反而更贴近实际业务节奏。
后来那个生鲜店老板说,光是把‘西瓜’固定推荐,夏季搜索转化涨了快两成。算法再聪明,也猜不到人什么时候想吃瓜。