禾匠视频小程序1.71版本微信小程序首页显示视频不全的问题

经过这几天对禾匠仿二更视频小程序模块的研究,发现一个问题,当后台视频过多的时候,微信小程序端刷新首页,会不能刷新出以前发的视频,哪怕在后台已经勾选“推荐到首页”也没用,问题出现在哪?

经过抓包对比发现,原来是通过videolist.item.is_index来判断这个视频是不是被推荐到首页的,而后台操作推荐/下架首页,也无非是操作了字段:is_index

再进一步抓包对比分析:

store_id=1&r=api/user/video-list

store_id=1&r=api/user/video-list&page=1.2.3…

user/video-list取首页视频的这个API函数貌似没有做首页推荐的排序优化

也就是说,比如你后台有100个视频,前90个都没有推荐到首页,最后10个才推荐到首页,按照他目前设置的排序规则,你可能需要刷新第9次,才能在首页刷出视频来

而这种严重不符合用户体验和逻辑的设计肯定是有问题的,没办法,自己来改造吧

面对后台那么多的目录,哪个才是包含核心功能的文件?第一反应是检索包含“video”的php文件,一个一个看吧,可找了一圈没有发现,没办法再换个思路,检索“list”的php文件,这回有了

找到核心代码:

$count = $query->count();
$p = new Pagination([‘totalCount’ => $count, ‘pageSize’ => $this->limit, ‘page’ => $this->page]);
$list = $query->select([
‘*’
])->orderBy([‘sort’=>SORT_ASC,’addtime’ => SORT_DESC])->limit($p->limit)->offset($p->offset)->asArray()->all();
$user = User::findOne([‘id’=>$this->user_id]);

通过代码分析,不难看出还是有做排序的,针对“sort”、“addtime”相对应后台的排序升序、发布时间降序,做了列表排序,而我们改动只需要一句话就能实现了:

[reply]’is_index’ => SORT_ASC[/reply]

加上这句代码,我们就可以达到符合逻辑和用户体验的首页获取推荐视频的算法了。

人已赞赏
雕技术

CC、TOP域名无法使用BootCDN服务,Request请求403错误的解决方法

2018-6-1 14:29:19

二次开发雕技术

志汇餐饮外卖小程序二次开发增加预约点餐功能

2018-6-7 15:31:55

免责声明本文中提到的资源均来自于互联网,仅供个人学习交流,若您喜欢本文可附上原文链接随意转载。
版权人申诉:我要申诉
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索