dedecms按栏目名首字母/数字排序输出的实现方法
时间:2019-03-27 10:51来源: 作者: 点击:
次
我们先测试一下读取子类 复制代码 代码如下: SELECT substr(typename,1,1) FROM `dede_arctype` WHERE topid0 好了现在正式开始增加字段 增加字段如图 取第一个给刚加的字段 first_l 复制代码 代码如下
我们先测试一下读取子类
复制代码代码如下: SELECT substr(typename,1,1) FROM `dede_arctype` WHERE topid>0
好了现在正式开始增加字段
增加字段如图
取第一个给刚加的字段 first_l
复制代码代码如下: update `dede_arctype` set first_word=substr( typename,1,1)
复制代码代码如下: function getfristword( $tid ) { $str =''; $tid = intval( $tid ); $dsql = new Dedesql(false); $sql ="select `first_word` from dede_arctype where topid='$tid' group by first_word"; $dsql->SetQuery($sql); $dsql->Execute('hw'); while($row=$dsql->GetArray('hw')) { if($row['first_word']) { $wd =$row['first_word']; $sql = "select * from dede_arctype where topid=$tid and first_word= '$wd' "; $dsql->SetQuery($sql); $dsql->Execute('wd'); $str .='<div class="ku1_left">'.strtoupper($wd).'开头</div>'; while( $rs = $dsql->GetArray('wd') ) { $str .='<a href="'.str_replace('{cmspath}','',$rs['typedir']).'" title="'.str_replace('下载','',$rs['typename']).'手机主题" target="_blank">'.$rs['typename'].'</a>'; } } } return $str; }
写好后,我们找到调用栏目的模板 jx.html里面这样写
复制代码代码如下: {dede:field.id function="getfristword(@me)"/} 这里是讲把当前栏目的id给getfirestword();
提示影响了 420 行。 ( 查询花费 0.0176 秒 ) 代码成功了,现在查看
如图
现在打开 的/include/channelunit.func.文件,我们在这里增加自定义函数
好了我们的效果就出来了如图
好了看看最终效果
(责任编辑:迷城网络科技) |
织梦二维码生成器
------分隔线----------------------------