搜索

增加相似名称+同导演+同演员三个条件同时存在的标签

[复制链接]
admin 发表于 2018-8-25 11:27:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册加入

x
在内容页调用相关影片时,常用的标签有
rel=r 像似名称影片
rel=d 同导演影片
rel=y 同演员影片
这三个标签在一个循环内只能单独使用,当使用rel=r调用相似名称影片的数量非常少时,可能无法填满预留位置,严重影响页面美观。

解决方法:增加一个支持相似名字+同导演+同演员三个条件同时存在的标签
编辑 /include/main.class.php 文件第1254
  1. $rel_r = substr($zrel['0'] - > v_name, 0, 9);
  2. unset($zrel);
  3. switch ($vrel) {
  4. case "d":
  5.     foreach($rel_d as $value) {
  6.         $d_str. = "'%".$value."%'#";
  7.     }
  8.     $d_str = rtrim($d_str, "#");
  9.     $d_str = str_replace("#", " or m.v_director like ", $d_str);
  10.     $whereRel = " and m.v_director like $d_str ";
  11.     break;
  12. case "y":
  13.     foreach($rel_y as $value) {
  14.         $y_str. = "'%".$value."%'#";
  15.     }
  16.     $y_str = rtrim($y_str, "#");
  17.     $y_str = str_replace("#", " or m.v_actor like ", $y_str);
  18.     $whereRel = " and m.v_actor like $y_str ";
  19.     break;
  20. case "r":
  21.     $whereRel = " and m.v_name like '%$rel_r%'";
  22.     break;
复制代码
下方插入
  1. case "s":
  2.     foreach($rel_d as $value) {
  3.         $d_str. = "'%".$value."%'#";
  4.     }
  5.     $d_str = rtrim($d_str, "#");
  6.     $d_str = str_replace("#", " or m.v_director like ", $d_str);
  7.     foreach($rel_y as $value) {
  8.         $y_str. = "'%".$value."%'#";
  9.     }
  10.     $y_str = rtrim($y_str, "#");
  11.     $y_str = str_replace("#", " or m.v_actor like ", $y_str);
  12.     $whereRel=" and (m.v_name like '%$rel_r%' or (m.v_director like $d_str) or (m.v_actor like $y_str) )";
  13.     break;
复制代码
调用标签:rel=s
adink 发表于 2018-8-25 11:55:20 | 显示全部楼层
这个功能没有加到6.64吗?
回复

使用道具 举报

aaahome 发表于 2018-8-28 02:03:10 | 显示全部楼层
这样插入 生成的时候直接 错误500了
回复

使用道具 举报

hengliang 发表于 2018-11-5 11:34:09 | 显示全部楼层
增加后,后台,生成页面,一片空白,怎么解决呢,代码哪里出了问题吗?
回复

使用道具 举报

pins8 发表于 2018-12-20 15:52:00 | 显示全部楼层
  1. $rel_d = explode ( ",", str_replace ( " ", ",", $zrel ['0']->v_director ) );
  2.                                         $rel_y = explode ( ",", str_replace ( " ", ",", $zrel ['0']->v_actor ) );
  3.                                         $rel_r = substr ( $zrel ['0']->v_name, 0, 9 );
复制代码
这些d y r都有定义 s没有定义
修改后网站报500
回复

使用道具 举报

小黑屋|海洋CMS

GMT+8, 2019-1-20 22:19 , Processed in 0.092647 second(s), 23 queries .

Powered by SeaCMS!

© 2015-2018 seacms.net.

快速回复 返回顶部 返回列表