/templets/default/index_article.htm
文件,找到以下代码:,,“html,{dede:field name='body'/},
`,,将其替换为:,,
`html,,,,{dede:field name='body'/},
`,,2. 打开
/include/common.func.php文件,找到以下代码:,,
`php,function GetSearchInfo($keyword) {,
`,,在其下方添加以下代码:,,
`php, $type = $_GET['type'];, if ($type == 'top') {, $row['litpic'] = GetTopImage($id);, } else {, $row['litpic'] = GetImage();, },},
“,,3. 保存文件并上传到服务器,然后更新缓存。,,完成以上步骤后,DedeCMS的
栏目缩略图功能即可实现。
在织梦CMS(DedeCMS)中,为栏目增加缩略图功能是一项常见需求,这不仅能够提升网站的视觉效果,还能帮助用户更直观地了解各个栏目的内容,以下是实现DEDECMS栏目缩略图的详细步骤及注意事项:
准备工作
1、备份文件:在进行任何修改之前,务必备份相关文件和数据库,以防出现意外情况导致数据丢失。
2、新建文件夹:打开templets
目录,在其中新建一个名为typeimg
的文件夹,用于独立存放栏目缩略图。
添加字段
1、后台执行SQL语句:在后台执行以下SQL语句,以添加栏目缩略图字段typeimg
:
ALTER TABLEdede_arctype
ADDtypeimg
CHAR(100) NOT NULL DEFAULT '';
注意:根据实际表前缀修改表名。
修改模板文件
1、修改catalog_add.php:
打开dede/catalog_add.php
文件,查找以下代码:
$queryTemplate = "insert intodede_arctype
(reid,topid,sortrank,typename,typedir,";
将其修改为:
$queryTemplate = "insert intodede_arctype
(reid,topid,sortrank,typename,typedir,typeimg,";
继续查找以下代码:
('~reid~','~topid~','~rank~','~typename~','~typedir~',
将其修改为:
('~reid~','~topid~','~rank~','~typename~','~typedir~','~typeimg~',
2、修改catalog_edit.php:
打开dede/catalog_edit.php
文件,查找以下代码:
$upquery = "Updatedede_arctype
set ";
在其下方添加一行:
'typeimg'='$typeimg',
3、修改catalog_add.htm:
打开dede/templets/catalog_add.htm
文件,查找以下代码:
<tr> <td height="26">列表命名规则:</td> <td> <input name="namerule2" type="text" id="namerule2" value="{typedir}/list_{tid}_{page}.html" class="pubinputs" style="width:250px" /> <img src="img/help.gif" alt="帮助" width="16" height="16" border="0" style="cursor:pointer" onClick="ShowHide('helpvar3')"/></td> </tr>
在其下方添加以下代码:
<tr> <td height="65" style="paddingleft:10px;">栏目图片:</td> <td> <input name="typeimg" type="text" style="width:250px" id="typeimg" class="alltxt" value="" /> <input type="button" name="set9" value="浏览... "class="coolbg np" style="width:60px" onClick="SelectTemplets('form1.typeimg&activepath=%2Ftemplets%2Ftypeimg&img=yes');" /> </td> </tr>
4、修改catalog_edit.htm:
打开dede/templets/catalog_edit.htm
文件,查找以下代码:
<tr> <td height="26">列表命名规则:</td> <td> <input name="namerule2" type="text" id="namerule2" value="<?php echo $myrow['namerule2']?>" size="40" class="iptxt" /> <img src="img/help.gif" alt="帮助" width="16" height="16" border="0" style="cursor:pointer" onClick="ShowHide('helpvar3')"/></td> </tr>
在其下方添加以下代码:
<tr> <td height="65" style="paddingleft:10px;">栏目图片:</td> <td> <input name="typeimg" type="text" style="width:250px" id="typeimg" class="alltxt" value="<?php echo $myrow['typeimg']?>" /> <input type="button" name="set9" value="浏览... "class="coolbg np" style="width:60px" onClick="SelectTemplets('form1.typeimg');" /> </td> </tr>
调用缩略图
1、在栏目模板中调用:使用以下标签在栏目模板中调用缩略图:
{dede:field.typeimg /}
2、页调用(如果需要):打开includearc.archives.class.php
文件,查找以下代码:
if($this>ChannelUnit>ChannelInfos['issystem']!=1)
$query = "Select arc.*,tp.reid,tp.typedir,ch.addtable fromdede_archives
arc left join dede_arctype tp on tp.id=arc.typeid left join dede_channeltype as ch on arc.channel = ch.id where arc.id='$aid' ";
$this>Fields = $this>dsql>GetOne($query);
将其修改为:
if($this>ChannelUnit>ChannelInfos['issystem']!=1)
$query = "Select arc.*,tp.reid,tp.typedir,tp.typeimg,ch.addtable fromdede_archives
arc left join dede_arctype tp on tp.id=arc.typeid left join dede_channeltype as ch on arc.channel = ch.id where arc.id='$aid' ";
$this>Fields = $this>dsql>GetOne($query);
FAQs常见问题与解答
问题 | 解答 |
如何在不同页面调用不同大小的缩略图? | 可以通过CSS样式控制缩略图的大小,在列表页调用小尺寸缩略图,在内容页调用大尺寸缩略图,具体方法是在模板文件中使用不同的CSS类或直接设置 标签的width 和height 属性。 |
如果缩略图无法显示,可能是什么原因? | 可能的原因包括:缩略图文件不存在、路径错误、文件权限问题等,建议检查缩略图文件是否上传到指定目录,路径是否正确,以及文件是否有读取权限。 |
通过以上步骤,您可以成功为DEDECMS的栏目添加缩略图功能,并实现在各个页面中的调用,希望这些信息对您有所帮助!