分类 Seacms 下的文章

SeaCMS视频名称中'及演员导演为空时被自动替换解决方法

1、视频名称中 ' 被自动替换为 / 的解决
编辑 /admin/admin_video.php 文件第65行,找到

$v_name = str_replace(array('\\','()','\''),'/',$v_name);

将其注释即可。

2、演员 为空时 被自动替换为 内详 的解决
编辑 /admin/admin_video.php 文件第68行,找到

if($v_actor=="" OR empty($v_actor)){$v_actor="内详";}

将其注释即可。

3、导演 为空时 被自动替换为 内详 的解决

编辑 /admin/admin_video.php 文件第77行,找到

if($v_director=="" OR empty($v_director)){$v_director="内详";}

将其注释即可。

SeaCMS支持斜杠分隔符

编辑 /include/common.func.php 文件第1386行,找到

function getKeywordsList($key,$span){
    if($key=='')return $key;
    $keyWordsStr="";
    $keystr=str_replace(",",",",$key);
    if (strpos($keystr,",")>0){$keyWordsArray=explode(",",$keystr);}else{$keyWordsArray=explode(" ",$keystr);}
    for($kli=0;$kli<count($keyWordsArray);$kli++){
        $keyWordsStr.="<a href='/".$GLOBALS['cfg_cmspath']."search.php?searchword=".urlencode($keyWordsArray[$kli])."'>".$keyWordsArray[$kli]."</a>".$span;
    }
    return $keyWordsStr;
}

function getJqList($key,$span){
    if($key=='')return $key;
    $keyWordsStr="";
    $keystr=str_replace(",",",",$key);
    if (strpos($keystr,",")>0){$keyWordsArray=explode(",",$keystr);}else{$keyWordsArray=explode(" ",$keystr);}
    for($kli=0;$kli<count($keyWordsArray);$kli++){
        $keyWordsStr.="<a href='/".$GLOBALS['cfg_cmspath']."search.php?searchtype=5&jq=".urlencode($keyWordsArray[$kli])."'>".$keyWordsArray[$kli]."</a>".$span;
    }
    return $keyWordsStr;
}

- 阅读剩余部分 -

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

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

解决方法:增加一个支持相似名字+同导演+同演员三个条件同时存在的标签

编辑 /include/main.class.php 文件第1254行

$rel_r = substr($zrel['0'] - > v_name, 0, 9);
unset($zrel);
switch ($vrel) {
case "d":
    foreach($rel_d as $value) {
        $d_str. = "'%".$value."%'#";
    }
    $d_str = rtrim($d_str, "#");
    $d_str = str_replace("#", " or m.v_director like ", $d_str);
    $whereRel = " and m.v_director like $d_str ";
    break;
case "y":
    foreach($rel_y as $value) {
        $y_str. = "'%".$value."%'#";
    }
    $y_str = rtrim($y_str, "#");
    $y_str = str_replace("#", " or m.v_actor like ", $y_str);
    $whereRel = " and m.v_actor like $y_str ";
    break;
case "r":
    $whereRel = " and m.v_name like '%$rel_r%'";
    break;

下方插入

    case "l":
    foreach($rel_d as $value) {
        $d_str. = "'%".$value."%'#";
    }
    $d_str = rtrim($d_str, "#");
    $d_str = str_replace("#", " or m.v_director like ", $d_str);
    foreach($rel_y as $value) {
        $y_str. = "'%".$value."%'#";
    }
    $y_str = rtrim($y_str, "#");
    $y_str = str_replace("#", " or m.v_actor like ", $y_str);
    $whereRel=" and (m.v_name like '%$rel_r%' or (m.v_director like $d_str) or (m.v_actor like $y_str) )";
    break;

SeaCMS地图页按首字母调用时0-9内容不显示的解决方法

编辑 /include/main.class.php 文件第1294行,将

if(!empty($vletter)) $whereLetter=" and m.v_letter ='".strtoupper($vletter)."' "; else $whereLetter="";

修改为

if(!empty($vletter))if(strlen($vletter)>1){$whereLetter=" and m.v_letter  between '0' and '9'";}else{$whereLetter=" and m.v_letter ='".strtoupper($vletter)."' ";} else $whereLetter="";