Cara menambah imej lajur dalam Dreamweaver CMS: 1. Namakan medan imej lajur yang hendak ditambah "typeimg", dan kod pelaksanaan ialah "ubah jadual dede_arctype tambah typeimg varchar(100)" 2. Ubah suai "; catelog_add .php" dan "catelog_edit.php" kandungan fail; 3. Gunakan teg saluran untuk memanggil lajur, dan kemudian dapatkan imej lajur atas lajur semasa.
Persekitaran pengendalian tutorial ini: sistem Windows 10, DedeCMS versi 5.7, komputer Dell G3.
Bagaimana untuk menambah gambar lajur dalam Dream Weaver CMS?
Kaedah kod untuk menambah imej lajur di latar belakang dedekms (Dreamweaver CMS)
Walaupun kaedah dalam talian adalah betul, beberapa butiran tidak dikendalikan dengan baik, dan ramai orang baru akan menghadapi masalah. Biar saya ringkaskan seterusnya.
Langkah pertama ialah menambah medan imej lajur Di sini saya menamakan medan typeimg Anda boleh menambah kod di latar belakang dan melaksanakan kod tersebut:
"System -> SQL command tool", masukkan pernyataan sql
alter table dede_arctype add typeimg varchar(100)
Langkah 2: Masukkan direktori fail pengurusan latar belakang (default: dede directory), cari beberapa tempat di bawah "catelog_add.php "Untuk diubah suai.
1. Cari $queryTemplate (kira-kira 65 baris)
Kod yang saya tukar adalah seperti berikut:
$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. Cari $in_query (kira-kira 227 baris)
Ubah suai keseluruhan $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')";
Sebenarnya, ia tidak sukar untuk menyalin dan menampal, dan veteran boleh mengubah suainya sendiri, cuma tambah medan typeimg pada pernyataan.
Langkah 3: Dengan cara yang sama, cari $upquery di bawah "catelog_edit.php" (kira-kira baris 38)
Ubah suai kod seperti berikut
$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' ";
Langkah 4: Masukkan fail pengurusan latar belakang direktori ( Lalai ialah: fail "catalog_add.htm dan catalog_edit.htm" di bawah direktori dede)/templets/, tambah kod berikut antara:
<script language='javascript' src="js/main.js"></script>
catalog_add.htm dan tambah kod berikut
<!--加入栏目--> <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>
Tambahkan kod berikut pada 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>
Nota: Kod kedua-dua fail ini berbeza dan mesti ditambah secara berasingan.
Langkah 5: Jika anda menggunakan teg saluran untuk memanggil lajur, anda perlu menukar fail /include/taglib/channel.lib.php dan cari kod berikut untuk menggantikannya
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 "; }
Sebenarnya, medan typeimg ditambahkan pada pernyataan sql.
Langkah keenam ialah memanggil
{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}
di meja depan Kod di atas adalah daripada Internet lajur semasa
Saya menggunakan dua kaedah untuk menyelesaikan masalah ini:
Saya mengujinya dan ia berfungsi
Kaedah pertama:
Ubah suai fail include/helpers/extend.helper.php
Cari fungsi gettoptype di dalamnya Tambah kod berikut untuk mendapatkan imej lajur
//增加栏目图片 $toptypeimg=$row['typeimg']; if($action="images") return $toptypeimg;
Kaedah panggilan hadapan:
<img src="{dede:field.typeid function=gettoptype(@me,images)/}">
Dengan cara ini anda boleh memanggilnya. Sempurna! !
Kaedah kedua:
Ubah suai fail include/common.func.php
Cuma tambah fungsi pada penghujungnya, seperti berikut:
//获取顶级栏目的栏目图片 李国平更新于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']; } }
Panggilan bahagian hadapan kaedahnya ialah:
<img src="{dede:field name='typeid' function="GetTopTypeimg(@me)" /}">
Ini juga boleh dipanggil. Sempurna! !
Pembelajaran yang disyorkan: tutorial dedecms
Atas ialah kandungan terperinci Bagaimana untuk menambah gambar lajur dalam Dreamweaver CMS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!