网站建设资讯

NEWS

网站建设资讯

织梦cms如何增加栏目图片

这篇文章主要介绍了织梦cms如何增加栏目图片的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇织梦cms如何增加栏目图片文章都会有所收获,下面我们一起来看看吧。

双城网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。成都创新互联公司公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

织梦cms增加栏目图片的方法:1、把要添加栏目图片字段取名为“typeimg”,执行代码为“alter table dede_arctype add typeimg varchar(100)”;2、修改“catelog_add.php”和“catelog_edit.php”文件内容;3、使用channel标签调用栏目,然后获取当前栏目的最顶级的栏目图片即可。

第一步、首先我们把要添加栏目图片字段我这里取字段名为typeimg,您可以在后台添加代码,执行代码,操作如下:
“系统->SQL命令工具” , 插入sql语句
alter table dede_arctype add typeimg varchar(100)
第二步:进入后台管理文件目录(默认为:dede目录),找到”catelog_add.php“下有几处要修改的。
1.找到$queryTemplate(大概65行左右)
我改的代码如下:

$queryTemplate = "INSERT INTO `#@__arctype`(reid,topid,sortrank,typename,typedir,isdefault,defaultname,issend,channeltype,
   tempindex,templist,temparticle,modname,namerule,namerule2,ispart,corank,description,keywords,seotitle,moresite,siteurl,sitepath,ishidden,`cross`,`crossid`,`content`,`smalltypes`,`typeimg`)
   VALUES('~reid~','~topid~','~rank~','~typename~','~typedir~','$isdefault','$defaultname','$issend','$channeltype',
   '$tempindex','$templist','$temparticle','default','$namerule','$namerule2','0','0','','','~typename~','0','','','0','0','0','','','~typeimg~')";

2.找到 $in_query(227行左右)

修改整个$in_query

$in_query = "INSERT INTO `#@__arctype`(reid,topid,sortrank,typename,typedir,isdefault,defaultname,issend,channeltype,
   tempindex,templist,temparticle,modname,namerule,namerule2,
   ispart,corank,description,keywords,seotitle,moresite,siteurl,sitepath,ishidden,`cross`,`crossid`,`content`,`smalltypes`,`typeimg`)
   VALUES('$reid','$topid','$sortrank','$typename','$typedir','$isdefault','$defaultname','$issend','$channeltype',
   '$tempindex','$templist','$temparticle','default','$namerule','$namerule2',
   '$ispart','$corank','$description','$keywords','$seotitle','$moresite','$siteurl','$sitepath','$ishidden','$cross','$crossid','$content','$smalltypes','$typeimg')";

其实没什么难的,新手可以复制粘贴,老手可以自行修改,就是在语句中添加一个typeimg字段而已。
第三步:同样的方法,找到”catelog_edit.php“下$upquery(38行左右)
修改代码如下

$upquery = "UPDATE `#@__arctype` SET
    issend='$issend',
    sortrank='$sortrank',
    typename='$typename',
    typedir='$typedir',
    isdefault='$isdefault',
    defaultname='$defaultname',
    issend='$issend',
    ishidden='$ishidden',
    channeltype='$channeltype',
    tempindex='$tempindex',
    templist='$templist',
    temparticle='$temparticle',
    namerule='$namerule',
    namerule2='$namerule2',
    ispart='$ispart',
    corank='$corank',
    description='$description',
    keywords='$keywords',
    seotitle='$seotitle',
    moresite='$moresite',
    `cross`='$cross',
    `content`='$content',
    `crossid`='$crossid',
`typeimg`='$typeimg',
    `smalltypes`='$smalltypes'     $uptopsql
   WHERE id='$id' ";

第四步:进入后台管理文件目录(默认为:dede目录)/templets/ 下的 “catalog_add.htm 和 catalog_edit.htm" 文件,在间加入下面代码:


catalog_add.htm 中加入如下代码



栏目图片:






catalog_edit.htm中加入如下代码



栏目图片:






注意:这二个文件的代码不一样,要分别加入。

第五步:如果使用通边 channel 标签调用栏目,所以要对/include/taglib/channel.lib.php文件进行更改,找到如下代码进行替换

    if($type=='top')
   {
       $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,typeimg
         From `#@__arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line ";
   }
   else if($type=='son')
   {
       if($typeid==0) return '';
       $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,typeimg
         From `#@__arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";
   }
   else if($type=='self')
   {
       if($reid==0) return '';
       $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,typeimg
           FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
   }

其实就是在sql语句里面添加了typeimg字段。
第六步,就是在前台调用了

{dede:channel type='self' typeid='15' row='8' currentstyle="
  • ~typename~
  • "}
  • [field:typename/]
  • {/dede:channel}

    以上这段代码是网上的,我要的不是这样的效果,我要是获取当前栏目的最顶级的栏目图片

    我用二种方法来解决这个问题:
    本人测试有效
    第一种:
    修改文件include/helpers/extend.helper.php
    找到gettoptype函数,在里面增加如下代码,目的是获取栏目图片

    //增加栏目图片
    $toptypeimg=$row['typeimg'];
    if($action="images") return $toptypeimg;

    前台调用方法:


    这样就可以调用了。完美!!

    第二种方法:
    修改文件include/common.func.php
    在最后增加一个函数就行了,如下:

    //获取顶级栏目的栏目图片 李国平更新于2021.3.11
    function GetTopTypeimg($id)
    {
    global $dsql;  
    $row = $dsql->GetOne("SELECT typeimg,topid FROM dede_arctype WHERE id= $id");
    if ($row['topid'] == '0')
    {
    return $row['typeimg'];  
    }
    else
    {
    $row1 = $dsql->GetOne("SELECT typeimg FROM dede_arctype WHERE id= $row[topid]");
    return $row1['typeimg'];
    }
    }

    前台调用方法为:

    关于“织梦cms如何增加栏目图片”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“织梦cms如何增加栏目图片”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。


    本文题目:织梦cms如何增加栏目图片
    转载来源:http://cdweb.net/article/jiceso.html