ホームページ  >  記事  >  CMS チュートリアル  >  Dreamweaver CMS で列の画像を追加する方法

Dreamweaver CMS で列の画像を追加する方法

藏色散人
藏色散人オリジナル
2023-03-14 10:42:301787ブラウズ

Dream Weaver CMS で列ピクチャを追加する方法: 1. 追加する列ピクチャ フィールドに「typeimg」という名前を付け、実行コードは「alter table dede_arctype add typeimg varchar(100)」です。 "catelog_add" .php" および "catelog_edit.php" ファイルの内容 3. チャネル タグを使用して列を呼び出し、現在の列の最上位の列イメージを取得します。

Dreamweaver CMS で列の画像を追加する方法

このチュートリアルの動作環境: Windows 10 システム、DedeCMS バージョン 5.7、Dell G3 コンピューター。

DreamWeaver cms に列の画像を追加するにはどうすればよいですか?

dedecms (Dreamweaver CMS) コードで列イメージを背景に追加する方法

インターネット上の方法は正しいですが、細部がうまく処理されていないため、多くの初心者は問題に遭遇するでしょう。次にまとめてみましょう。

最初のステップは、列イメージ フィールドを追加することです。ここではフィールドに typeimg という名前を付けます。バックグラウンドでコードを追加し、コードを実行できます。操作は次のとおりです:
"システム -> SQL コマンド ツール」、SQL ステートメントを挿入
alter table dede_arctype add typeimg varchar(100)
ステップ 2: バックグラウンド管理ファイル ディレクトリ (デフォルト: 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 フィールドを追加するだけで自分で変更できます。
ステップ 3: 同様に、「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' ";

ステップ 4: バックグラウンド管理ファイルのディレクトリに入ります (デフォルトは : dede ディレクトリ)/templets/ 「catalog_add.htm およびcatalog_edit.htm」ファイルの下に、次のコードを追加します。

4df64949a418eaaac6f0491cdce4fee62cacc6d41bbb37262a98f745aa00fbf0

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(&#39;form1.imgmm&#39;,&#39;big&#39;)" />
</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[&#39;typeimg&#39;]?>" />
<input name="imgmm_bt" type="button" class="inputbut" value="浏览..." onclick="SelectImage(&#39;form1.imgmm&#39;,&#39;big&#39;)" />
</td>
<input type="hidden" name="dede_addonfields" value="imgmm,img" />
</tr>

注: これら 2 つのファイルのコードは異なるため、別々に追加する必要があります。

ステップ 5: チャネル タグを使用して列を呼び出す場合は、/include/taglib/channel.lib.php ファイルを変更し、次のコードを見つけて置き換える必要があります。

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

実際には、SQL ステートメントに typeimg フィールドが追加されます。
6 番目のステップは、

{dede:channel type='self' typeid='15' row='8' currentstyle="25edfb22a4f469ecb59f1190150159c68d60d59de777e50e50090b37959b0985~typename~5db79b134e9f6b82c0b36e0489ee08ed bed06894275b65c1ab86501b08a632eb"}25edfb22a4f469ecb59f1190150159c65ab648ad8fc41adf601551917280b087[field:typename/]5db79b134e9f6b82c0b36e0489ee08ed eb1070f765392fe362bd87515babcaeebed06894275b65c1ab86501b08a632eb{/dede:channel}

を呼び出すことです。上記のコードはオンラインです。私が望むのは、この効果ではありません。現在の列の一番上の列の画像を取得する場合

2 つ使用しますこの問題を解決する方法:
テストしてみたところ、うまくいきました
最初の方法:
ファイルを変更します include/helpers/extend.helper.php
gettoptype 関数を見つけて、それに次のコードを追加しますコード。目的は列の画像を取得することです。

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

フロントエンド呼び出しメソッド:

58a4381fe43a7333eff0607c269bbf9e

この方法で呼び出すことができます。完璧! !

2 番目の方法:
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[&#39;topid&#39;] == &#39;0&#39;) 
{ 
return $row[&#39;typeimg&#39;];  
} 
else 
{ 
$row1 = $dsql->GetOne("SELECT typeimg FROM dede_arctype WHERE id= $row[topid]"); 
return $row1[&#39;typeimg&#39;]; 
} 
}

フロントエンドの呼び出しメソッドは次のとおりです。 :

349f82663f400e28b106a4f93a2eb326

これも呼び出せます。完璧! !

推奨学習: dedecms チュートリアル

以上がDreamweaver CMS で列の画像を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。