My Computer · 2024/08/27 0

给苹果cms专题内容$obj.vod_list增加一个排序规则

模板专题页没有对输出内容进行排序,测试了几个排序方式也都无效,所以增加了一段代码,按照视频收录中的输入顺序进行排序

要根据 topic_rel_vod 字段的排序顺序来输出 $obj.vod_list 的内容:

  1. 提取 topic_rel_vod 字段中的ID顺序: 将这些ID保存为一个数组,按照顺序排列。
  2. $obj.vod_list 进行排序: 根据上一步提取的ID顺序,对 $obj.vod_list 进行自定义排序。

在模板页面,如vodlist.html最前边增加以下代码:

{php}
$sorted_vod_list = [];
$topic_rel_vod_ids = explode(',', $obj['topic_rel_vod']);
foreach ($topic_rel_vod_ids as $id) {
    foreach ($obj['vod_list'] as $vod) {
        if ($vod['vod_id'] == $id) {
            $sorted_vod_list[] = $vod;
            break;
        }
    }
}
$obj['vod_list'] = $sorted_vod_list;
{/php}

这样,就可以按照 “视频收录” topic_rel_vod 字段的顺序来输出专题视频列表。

专题详情页{$obj.topic_content}只能保存纯文本,可将application/common/model/topic.php xss过滤部分的代码注释掉

$filter_fields = [
.
//'topic_content',
.
];