设为首页 - 加入收藏
您的当前位置:首页 > CMS教程 > dedecms >  正文

给dede栏目添加上缩略图功能

来源:WDPHP技术站 时间:2019年06月05日 浏览次数:735次


当我们需要在栏目文章列表页用一张图片来区别其他栏目,或者我们列举栏目的时候,想在栏目名称开如果没有这项功能会非常麻烦,网上有很多这方面的资料,但是都试过了有很多问题,自己研究一下,测试基本通过。需要新加字段 typeimg

添加typeimg字段的SQL: alter table `80php_arctype` add `typeimg` char(100) NOT NULL default ''

1.涉及到文件:


dede/catalog_add.php
dede/catalog_edit.php
dede/templets/catalog_add.htm
dede/templets/catalog_edit.htm

2.修改添加和编辑栏目的php代码

(1) 打开dede/catalog_add.php
查找$queryTemplate = insert into `80php_arctype`
将 (reid,topid,sortrank,typename,typedir, 替换为 (reid,topid,sortrank,typename,typedir,typeimg,

将 ('~reid~','~topid~','~rank~','~typename~','~typedir~', 替换为 ('~reid~','~topid~','~rank~','~typename~','~typedir~','~typeimg~',

(2) 打开dede/catalog_edit.php
查找$upquery = Update `80php_arctype` set

在其下面新加一行 `typeimg`='$typeimg',

3.修改添加和编辑栏目的模板文件
(1) 打开dede/templets/catalog_add.htm
查找

&lttr&gt

&lttd height=26&gt列表命名规则:&lt/td&gt

&lttd&gt

&ltinput name=namerule2 type=text id=namerule2 value={typedir}/list_{tid}_{page}.html class=pubinputs style=width:250px /&gt

&ltimg src=img/help.gif alt=帮助 width=16 height=16 border=0 style=cursor:pointer onClick=ShowHide('helpvar3')/&gt

&lt/td&gt

&lt/tr&gt


在其下面增加以下内容

&lttr&gt
&lttd height=65 style=padding-left:10px&gt栏目图片:&lt/td&gt
&lttd&gt
&ltinput name=typeimg type=text style=width:250px id=typeimg class=alltxt value= /&gt
&ltinput type=button name=set9 value=浏览... class=coolbg np style=width:60px onClick=SelectImage('form1.typeimg','') /&gt
&lt/td&gt
&lt/tr&gt


并在文件的head部分增加以下内容
&ltscript language='javascript' src=https://www.vfjianzhan.com/skin/moyu/image/nopic.gif>


(2) 打开dede/templets/catalog_edit.htm
在刚前面的位置加入:
&lttr&gt
&lttd height=65 style=padding-left:10px&gt栏目图片:&lt/td&gt
&lttd&gt
&ltinput name=typeimg type=text style=width:250px id=typeimg class=alltxt value=&lt?php echo $myrow['typeimg']?&gt /&gt
&ltinput type=button name=set9 value=浏览... class=coolbg np style=width:60px onClick=SelectImage('form1.typeimg','') /&gt
&lt/td&gt
&lt/tr&gt
说明:下面这句会调用出已添加的路片路径。
&lt?php echo $myrow['typeimg']?&gt

并在文件的head增加以下内容
&ltscript language='javascript' src=https://www.vfjianzhan.com/skin/moyu/image/nopic.gif />
我试了一下在模版里用:{dede:field.typeimg /} 是调不出数据的,所以我改成了SQL调用。
原来是这样的:
{dede:channel type='top' row='}
&ltli&gt&lta href='[field:typeurl/]' [field:rel/]&gt[field:typeimg/]&lt/a&gt&lt/li&gt
{/dede:channel}
在这里面加上[field:typeimg] 是调不出来的,我个人认为栏目缩略图就是通过循环出来的,而循环不出来则意义不大,所以改成了如下:
{dede:sql sql=SELECT typename,typedir,typeimg FROM dede_arctype}
&ltli&gt&lta href=[field:typedir/]&gt[field:typeimg/]&lt/a&gt&lt/li&gt
{/dede:sql}
这样就顺利的调出来了,当然如果你要调用子ID的话,只要加上相应的条件ID调用就可以了。

Copyright © 2016-2018 西安尊云信息科技有限公司 版权所有 陕ICP备16002142号

3BR在线工具 WDVPS主机提供服务器和带宽
承接各类PHP项目、程序开发、程序修改等业务 QQ:316430983

Top