您当前的位置:首页 > 帝国CMS教程

帝国cms教程获取标题首字母方法与扩展应用

来源:帝国CMS教程发布者:帝国CMS模板网时间:2014-02-02

在做下载站或电影站时会用到按首字母索引功能,这里做一下介绍。




1、在数据表中添加字段 infozm


2、在模型中设置为录入项,如图一所示


这时录入信息便会自动生成首字母。




扩展一下


例如 标题为 1942 的电影,这里默认会生成Y字母


如果我们希望 1942,2012,3D血腥情人节 之类的按数字进行筛选


那么只需要将系统默认的函数内容修改为如下代码即可。


函数位置:e/class/connect.php 约3467行。


//取得字母
function GetInfoZm($hz){
    if(!trim($hz))
    {
        return '';
    }
    $hz=esub($hz,1);
    $numstrs='123456789一二三四五六七八九';
    $numstr['1']='1';
    $numstr['2']='2';
    $numstr['3']='3';
    $numstr['4']='4';
    $numstr['5']='5';
    $numstr['6']='6';
    $numstr['7']='7';
    $numstr['8']='8';
    $numstr['9']='9';
    $numstr['一']='1';
    $numstr['二']='2';
    $numstr['三']='3';
    $numstr['四']='4';
    $numstr['五']='5';
    $numstr['六']='6';
    $numstr['七']='7';
    $numstr['八']='8';
    $numstr['九']='9';
    if(strstr($numstrs,$hz))
    {
    $zm=$numstr[$hz];
    }
    else
    {
    $py=ReturnPinyinFun($hz);
    $zm=substr($py,0,1);
    }
    return strtoupper($zm);
}