|
|
@@ -169,9 +169,10 @@ class Merchant extends BaseController
|
|
169
|
169
|
// ===== sort 随机打乱结束 =====
|
|
170
|
170
|
|
|
171
|
171
|
// ===== 混入推荐商品逻辑(每页3-5个,跨页不重复,随机插入) =====
|
|
172
|
|
- // 用户已登录时,将搜索关键词匹配的商品随机混入列表,保持每页商品数量不变
|
|
|
172
|
+ // 用户已登录且没有主动搜索时,将搜索关键词匹配的商品随机混入列表,保持每页商品数量不变
|
|
173
|
173
|
// 跨页去重方案:一次性查询所有匹配商品形成"推荐池",按页码切片取不同子集
|
|
174
|
|
- if (!is_null($this->userInfo) && !empty($result['list'])) {
|
|
|
174
|
+ $hasKeyword = !empty($params['keyword'] ?? '') || !empty($this->request->param('keyword', ''));
|
|
|
175
|
+ if (!is_null($this->userInfo) && !empty($result['list']) && !$hasKeyword) {
|
|
175
|
176
|
try {
|
|
176
|
177
|
// 1. 获取用户最近的搜索关键词(去重)
|
|
177
|
178
|
$searchKeywords = Db::name('user_visit')
|