做網站,我們是認真的!

網站適配電腦+手機端,僅1280元,送2000M阿里云服務器,送com域名+免費備案
網站前端采用靜態系統顯示,后端動態管理,我們承諾網站包收錄,完成網站之后把源碼給客戶!

觀點

互聯網+時代,說建站,談運營與網絡營銷

織夢中不同的欄目,調用不同的banner圖

時間:2020-12-15

首頁、聯系我們、公司介紹,等調用默認banner~~~這就不說了。

它的產品  比如:
產品大類A(封面頁,typeid=111)-小類1 小類2 小類3 小類4
產品大類B(封面頁 typeid=222)-小類5 小類6 小類7 小類8
產品大類C(封面頁 typeid=333)-小類9 小類10 小類11 小類12……

A大類下,所有子欄目及文章,banner圖是同一張 111.jpg  ~~ B大類的又是另外的一張222.jpg

——或者說:產品所有的頁面,都是調用所屬頂級欄目(封面頁)的 typeid 名字的圖?。?!
 

<div class="banner"><img src="banner.jpg" /></div>  那這里,怎么達到我說的效果?

 

解決辦法:
    <img src="{dede:global.cfg_templets_skin/}/images/{dede:field.typeid function="GetTopid(@me)"/}.jpg" alt="{dede:field.typename/}" /> 只要改改圖片的名字就行了 已經試過了很好用的

 

織夢58首推這一方法,經過測試是可行的

dede調用頂級欄目ID 方法二:

首先,在所需要調用頂級欄目ID的地方,添加這段標簽語法{dede:type}[feild:topid/]{/dede:type}

第二,修改源文件,找到include目錄下的taglib目錄下的type.lib.php。

找到這條語句

$row = $dsql->GetOne(“Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id=’$typeid’ “);

修改成為

$row = $dsql->GetOne(“Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id=’$typeid’ “);

在if(!is_array($row)) return ”;下一行添加

if( $row['topid']==0){$row['topid']=$row['id'];}

這樣,這條語句在頂級欄目還是子欄目,都可以調用了

這一方法看起來不錯而且修改一下源碼就可以了但是經過本人的測試發現沒有實現我要的效果,故沒有用它,如果有心的朋友可以測試一下是否可行

以上是織夢58對dede織夢模板中添加頂級欄目id的方法的一個小小總結,歡迎各位的測試和關注,如果有新的方法希望可以分享哦,您可以在我的評論中進行留言

 

--------------------------------------------------華麗小分割------------------------------------------------------------

DedeCMS借助頂級欄目id來調用不同的banner廣告圖片

 

DedeCMS借助頂級欄目id來調用不同的banner廣告圖片。dedecms模板中添加頂級欄目id的方法總結,使用dede頂級欄目id可以實現很多功能比如:在每個列表頁調用不同的欄目圖片(同一頂級欄目調用相同的圖片),如果我們做N個欄目就意味著要做N個列表頁模板,顯示這種方法是不可取的,那么我們怎樣來更快更簡單的處理這個問題呢,dede模板的思路是這樣的:調用頂級欄目ID,然后將圖片尾部添加為ID號如:img1.jpg 即為imgID.jpg這樣我們只需要制作圖片就可以了;大概意思就是這樣的吧,下面是織夢者在網絡中收集到的方法:

 

dede調用頂級欄目ID 方法一:

{dede:field.typeid function="GetTopid(@me)"/}

 

織夢者首推這一方法,經過測試是可行的

 

dede調用頂級欄目ID 方法二:

 

首先,在所需要調用頂級欄目ID的地方,添加這段標簽語法{dede:type}[feild:topid/]{/dede:type}

 

第二,修改源文件,找到include目錄下的taglib目錄下的type.lib.PHP。

dedemcs模版

找到這條語句

 

$row = $dsql->GetOne("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

From `dede_arctype` where id=rsquo;$typeidrsquo; ");

 

修改成為

dedemcs標簽

$row = $dsql->GetOne("Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

From `dede_arctype` where id=rsquo;$typeidrsquo; ");

 

在if(!is_array($row)) return ";下一行添加

 

if( $row['topid']==0){$row['topid']=$row['id'];}

 

這樣,這條語句在頂級欄目還是子欄目,都可以調用了。

 

這一方法看起來不錯而且修改一下源碼就可以了但是經過本人的測試發現沒有實現我要的效果,故沒有用它,如果有心的朋友可以測試一下是否可行。以上是織夢58對dede織夢模板中添加頂級欄目id的方法的一個小小總結。

 

個人小總結:

dede調用頂級欄目ID 方法

 

<img src="{dede:global.cfg_templets_skin/}/images/banner/{dede:field.typeid function="GetTopid(@me)"/}.jpg" alt="{dede:field.typename/}" />


<img src="/templets/default/images/banner/5.jpg" alt="聯系我們">
0
首頁
案例
關于
聯系
凯时平台