帝国CMS给TAG标签添加自动获取首字母的方法!(超级简单的方法)

  在帝国CMS程序建站的过程中,我们经常会遇到各式各样的问题,例如今天要为大家分享的帝国CMS怎么给TAG标签添加自动获取首字母呢?下面帝国CMS模板网就来告诉大家帝国CMS给TAG标签添加自动获取首字母的方法,一起来学习学习吧:

  自己获取TAG首字母教程

  第一步:在表enewstags增加字段zm(建议用phpmyadmin或直接SQL:ALTER TABLE `phome_enewstags` ADD `zm` CHAR(2) NOT NULL AFTER `tagname`;)

  ***********************************************

  第二步:

  找到:eadmintagsAddTags.php

  查找:$r=$empire->fetch1("select tagid,tagname,cid from {$dbtbpre}enewstags where tagid='$tagid'");

  修改为:$r=$empire->fetch1("select tagid,tagname,zm,cid from {$dbtbpre}enewstags where tagid='$tagid'");

  在69行后添加:

  第三步:

  修改文件:eadmintagsListTags.php

  ***********************************************

  require("../../class/userfun.php");

  查找:$tagname=RepPostVar($add['tagname']);

  202行后增加:$tagzm=getfirstchar(RepPostVar($_POST['tagname']));

  ***********************************************

  查找://修改TAGS 函数里添加:$zm=RepPostVar($add['zm']);

  查找:$sql=$empire->query("insert into {$dbtbpre}enewstags(tagname,num,isgood,cid) values('$tagname',0,0,'$cid');");

  修改为:$sql=$empire->query("insert into {$dbtbpre}enewstags(tagname,num,zm,isgood,cid) values('$tagname',0,'$tagzm',0,'$cid');");

  ***********************************************

  查找:$sql=$empire->query("update {$dbtbpre}enewstags set tagname='$tagname',cid='$cid' where tagid='$tagid'");

  修改为:$sql=$empire->query("update {$dbtbpre}enewstags set tagname='$tagname',cid='$cid',zm='$zm' where tagid='$tagid'");

  第四步:

  打开/e/class/userfun.php

  添加以下函数:

function getfirstchar($s0){$fchar = ord($s0{0});if($fchar >= ord("A") and $fchar <= ord("z") )return strtoupper($s0{0});$s1 = iconv("UTF-8","gb2312", $s0);$s2 = iconv("gb2312","UTF-8", $s1);if($s2 == $s0){$s = $s1;}else{$s = $s0;}$asc = ord($s{0}) * 256 + ord($s{1}) - 65536;if($asc >= -20319 and $asc <= -20284) return "A";if($asc >= -20283 and $asc <= -19776) return "B";if($asc >= -19775 and $asc <= -19219) return "C";if($asc >= -19218 and $asc <= -18711) return "D";if($asc >= -18710 and $asc <= -18527) return "E";if($asc >= -18526 and $asc <= -18240) return "F";if($asc >= -18239 and $asc <= -17923) return "G";if($asc >= -17922 and $asc <= -17418) return "I";if($asc >= -17417 and $asc <= -16475) return "J";if($asc >= -16474 and $asc <= -16213) return "K";if($asc >= -16212 and $asc <= -15641) return "L";if($asc >= -15640 and $asc <= -15166) return "M";if($asc >= -15165 and $asc <= -14923) return "N";if($asc >= -14922 and $asc <= -14915) return "O";if($asc >= -14914 and $asc <= -14631) return "P";if($asc >= -14630 and $asc <= -14150) return "Q";if($asc >= -14149 and $asc <= -14091) return "R";if($asc >= -14090 and $asc <= -13319) return "S";if($asc >= -13318 and $asc <= -12839) return "T";if($asc >= -12838 and $asc <= -12557) return "W";if($asc >= -12556 and $asc <= -11848) return "X";if($asc >= -11847 and $asc <= -11056) return "Y";if($asc >= -11055 and $asc <= -10247) return "Z";if(!trim($s0)){return null;}$s0=esub($s0,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,$s0)){return $numstr[$s0];}}

  OK,到这里就搞定了!其他的大家自行测试吧!


转载请注明: » 帝国CMS给TAG标签添加自动获取首字母的方法!(超级简单的方法)