dedecms按栏目名首字母/数字排序输出方法

我们先测试一下读取子类

 代码如下 复制代码
SELECT substr(typename,1,1) FROM `dede_arctype` WHERE topid>0

好了现在正式开始增加字段

增加字段如图

取第一个给刚加的字段 first_l

 代码如下 复制代码
update `dede_arctype` set first_word=substr( typename,1,1)

提示影响了 420 行。 ( 查询花费 0.0176 秒 ) 代码成功了,现在查看

如图

现在打开 dedecms的/include/channelunit.func.php文件,我们在这里增加自定义函数

 代码如下 复制代码

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();

好了我们的效果就出来了如图

好了看看最终效果

http://www.111cn.net/nokia/

本站原创教程转载必须注明来源http://www.111cn.net/wy/yw.html

时间: 2024-09-20 15:38:02

dedecms按栏目名首字母/数字排序输出方法的相关文章

Python中将单词首字母大写的capitalize()方法

  这篇文章主要介绍了浅析Python中将单词首字母大写的capitalize()方法,是Python入门中的基础知识,需要的朋友可以参考下 capitalize()方法返回字符串的一个副本,只有它的第一个字母大写.对于8位的字符串,这个方法与语言环境相关. 语法 以下是capitalize()方法的语法: ? 1 str.capitalize() 参数 NA 返回值 此方法返回的字符串只有它的第一个字符大写的副本. 例子 下面的示例演示了capitalize方法的使用. ? 1 2 3 4 5

JAVA对象jackson序列化json属性名首字母变成小写的解决方案

java代码对象如下: package com.ctrip.market.messagepush.service.entity; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; public class WaitSendModel { public long MsgID; public String GroupID; public i

织梦dedecms 5.7 GBK按照字母搜索的实现方法

目前织梦dedecms v5.7已正式发布,但在实际的使用环境中往往我们需要进行一些特定功能的实现,比如按照字母搜索等,下面我们来说一下该功能是如何实现的,主要的方法就是提取发布资源中第一个字母,存储到数据表中,然后进行索引. DedeCMS 基于PHP和MySQL技术开发,可同时使用于Windows.Linux.Unix平台,环境需求如下: 1.Windows 平台:    IIS/Apache + PHP4/PHP5 + MySQL3/4/5    如果在windows环境中使用,建议用De

dedecms生成栏目 DedeTag Engine Create File False解决方法

由于我的栏目几百上千,我自己写了一款dedecms数据导入程序,导入了dedecms分类,但生成时出现总是dedetag engine create file false , 第一反应就是查找dedetag.class.php教程文件,找到581行代码如 //把分析模板输出为文件  function saveto($filename)  {   $fp = @fopen($filename,"w") or die("dedetag engine create file fal

python中合并两个文本文件并按照姓名首字母排序的例子_python

前段时间前在网上看到一段面试题,要求如下: employee文件中记录了工号和姓名 复制代码 代码如下:     cat employee.txt:        100 Jason Smith        200 John Doe        300 Sanjay Gupta        400 Ashok Sharma bonus文件中记录工号和工资 复制代码 代码如下:     cat bonus.txt:        100 $5,000        200 $500     

php获取汉字拼音首字母的函数(真正可以使用的

现实中我们经常看到这样的说明,排名不分先后,按姓名首字母进行排序.这是中国人大多数使用的排序方法.那么在php程序中该如何操作呢?下面就分享一下在php程序中获取汉字拼音的首字母的方法,在网上搜到的大多数是有问题的,这个可是经过作者实践应用过的,真的可以使用的哦. //php获取中文字符拼音首字母 function getFirstCharter($str){ if(empty($str)){return '';} $fchar=ord($str{0}); if($fchar>=ord('A')

php获取汉字拼音首字母的方法_php技巧

现实中我们经常看到这样的说明,排名不分先后,按姓名首字母进行排序.这是中国人大多数使用的排序方法.那么在php程序中该如何操作呢? 下面就分享一下在php程序中获取汉字拼音的首字母的方法,在网上搜到的大多数是有问题的,这个可是经过小编实践应用过的,真的可以使用的哦. //php获取中文字符拼音首字母 function getFirstCharter($str){ if(empty($str)){return '';} $fchar=ord($str{0}); if($fchar>=ord('A'

如何把Excel列表名由字母变成数字

如下图: Excel列表名由字母ABCD变成数字1234 原因:设置改变 解决方法:File-Options-Formulas-将R1C1 reference style前的勾去掉. 查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Office/excel/

php批量获取首字母(汉字、数字、英文)

php批量获取首字母(汉字.数字.英文) $mysql_server_name='127.0.0.1'; //改成自己的mysql数据库服务器 $mysql_username='用户'; //改成自己的mysql数据库用户名 $mysql_password='密码'; //改成自己的mysql数据库密码 $mysql_database='数据库'; //改成自己的mysql数据库名 mysql_connect('127.0.0.1', $mysql_username,$mysql_passwor