您好,登錄后才能下訂單哦!
這篇文章主要介紹了織夢(mèng)cms如何增加欄目圖片的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇織夢(mèng)cms如何增加欄目圖片文章都會(huì)有所收獲,下面我們一起來看看吧。
織夢(mèng)cms增加欄目圖片的方法:1、把要添加欄目圖片字段取名為“typeimg”,執(zhí)行代碼為“alter table dede_arctype add typeimg varchar(100)”;2、修改“catelog_add.php”和“catelog_edit.php”文件內(nèi)容;3、使用channel標(biāo)簽調(diào)用欄目,然后獲取當(dāng)前欄目的最頂級(jí)的欄目圖片即可。
第一步、首先我們把要添加欄目圖片字段我這里取字段名為typeimg,您可以在后臺(tái)添加代碼,執(zhí)行代碼,操作如下:
“系統(tǒng)->SQL命令工具” , 插入sql語句
alter table dede_arctype add typeimg varchar(100)
第二步:進(jìn)入后臺(tái)管理文件目錄(默認(rèn)為: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行左右)
修改整個(gè)$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')";
其實(shí)沒什么難的,新手可以復(fù)制粘貼,老手可以自行修改,就是在語句中添加一個(gè)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' ";
第四步:進(jìn)入后臺(tái)管理文件目錄(默認(rèn)為:dede目錄)/templets/ 下的 “catalog_add.htm 和 catalog_edit.htm" 文件,在間加入下面代碼:
<script language='javascript' src="js/main.js"></script>
catalog_add.htm 中加入如下代碼
<!--加入欄目-->
<tr>
<td class="bline" height="26" style="padding-left:10px;">欄目圖片:</td>
<td class="bline">
<input type="text" name="typeimg" id="imgmm" style="width:300px" class="text" />
<input name="imgmm_bt" type="button" class="inputbut" value="瀏覽..." onclick="SelectImage('form1.imgmm','big')" />
</td>
<input type="hidden" name="dede_addonfields" value="imgmm,img" />
</tr>
catalog_edit.htm中加入如下代碼
<!--加入欄目-->
<tr>
<td class="bline" height="26" style="padding-left:10px;">欄目圖片:</td>
<td class="bline">
<input type="text" name="typeimg" id="imgmm" style="width:300px" class="text" value="<?php echo $myrow['typeimg']?>" />
<input name="imgmm_bt" type="button" class="inputbut" value="瀏覽..." onclick="SelectImage('form1.imgmm','big')" />
</td>
<input type="hidden" name="dede_addonfields" value="imgmm,img" />
</tr>
注意:這二個(gè)文件的代碼不一樣,要分別加入。
第五步:如果使用通邊 channel 標(biāo)簽調(diào)用欄目,所以要對(duì)/include/taglib/channel.lib.php文件進(jìn)行更改,找到如下代碼進(jìn)行替換
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 ";
}
其實(shí)就是在sql語句里面添加了typeimg字段。
第六步,就是在前臺(tái)調(diào)用了
{dede:channel type='self' typeid='15' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}<li><a href='[field:typelink/]'>[field:typename/]</a> <img src='[field:typeimg/]' /></li>{/dede:channel}
以上這段代碼是網(wǎng)上的,我要的不是這樣的效果,我要是獲取當(dāng)前欄目的最頂級(jí)的欄目圖片
我用二種方法來解決這個(gè)問題:
本人測(cè)試有效
第一種:
修改文件include/helpers/extend.helper.php
找到gettoptype函數(shù),在里面增加如下代碼,目的是獲取欄目圖片
//增加欄目圖片
$toptypeimg=$row['typeimg'];
if($action="images") return $toptypeimg;
前臺(tái)調(diào)用方法:
<img src="{dede:field.typeid function=gettoptype(@me,images)/}">
這樣就可以調(diào)用了。完美?。?/p>
第二種方法:
修改文件include/common.func.php
在最后增加一個(gè)函數(shù)就行了,如下:
//獲取頂級(jí)欄目的欄目圖片 李國平更新于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'];
}
}
前臺(tái)調(diào)用方法為:
<img src="{dede:field name='typeid' function="GetTopTypeimg(@me)" /}">
關(guān)于“織夢(mèng)cms如何增加欄目圖片”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“織夢(mèng)cms如何增加欄目圖片”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。