西安網(wǎng)站建設(shè) | 西安網(wǎng)站制作 | 西安網(wǎng)站設(shè)計 | 西安小程序開發(fā) | 兄弟網(wǎng)絡(luò) - 西安網(wǎng)站建設(shè)十余年經(jīng)驗,值得信賴!
了解市場新觀點(diǎn),內(nèi)部案例剖析,增強(qiáng)服務(wù)意識與專業(yè)水平。

怎樣用sql標(biāo)簽來實現(xiàn)自己控制樣式

來源:西安網(wǎng)站制作   日期:2015-05-20 16:19:40   點(diǎn)擊:2577

用過科汛系統(tǒng)函數(shù)標(biāo)簽的"循環(huán)顯示欄目文章標(biāo)簽"的用戶可能就知道這個標(biāo)簽有一定的局限性,樣式無法自己控制.往往無法滿足自己的需求.現(xiàn)在我就教大家用sql標(biāo)簽來實現(xiàn)類似效果的制作方法

  正如標(biāo)題所說需要sql標(biāo)簽嵌套調(diào)用,但考慮到系統(tǒng)生成速度方面原因,默認(rèn)情況下科汛的sql標(biāo)簽是不支持嵌套調(diào)用的,那我們就對科汛的代碼進(jìn)行小手術(shù).請跟我來吧

第一步:對代碼進(jìn)行小手術(shù)

  用dw等編輯工具打開KS_Cls/Kesion.Label.CommonCls.asp文件,并找到約112左右的如下代碼

  Dim DCls:Set Dcls=New DIYCls
   Content=DCls.ReplaceUserFunctionLabel(Content) 
   Set DCls=nothing
   ReplaceAllLabel =Content

   ReplaceAllLabel=DCls.ReplaceUserFunctionLabel(Content)
我們改成以下代碼

    Dim DCls:Set Dcls=New DIYCls
   Content=DCls.ReplaceUserFunctionLabel(Content)

相信有點(diǎn)asp代碼基礎(chǔ)的用戶都可以看得明白,就是當(dāng)模板文件里包括{SQL_開頭時,就再一次執(zhí)行sql標(biāo)簽替換操作.正如之前說的,考慮到生成速度方面原因.如果模板里不包含{SQL_就不再替換了,所以這里的If判斷對系統(tǒng)的性能有一定的作用.因為我們并不要求所有標(biāo)簽都要嵌套的.

第二步:分析實現(xiàn)

制作被嵌套的文章列表(查詢KS_Article表):

sql標(biāo)簽名稱:文章循環(huán)體

sql參數(shù): 欄目ID

sql語句:select top 10 id,title,adddate from ks_article where tid='{$Param(0)}' order by id desc

sql循環(huán)體:

[loop=10]

  • {$Field(title,Text,0,...,0,)}
    [/loop]


    制作欄目列表標(biāo)簽(查詢KS_Class欄目表)

    sql標(biāo)簽名稱:循環(huán)欄目列表

    sql語句:select top 10 id,FolderName from ks_class where tn='{$CurrClassID}' order by folderOrder

    sql循環(huán)體:


    [loop=10]

      


      

    [/loop]

    {$Field(foldername,Text,0,...,0,)}

     {SQL_文章循環(huán)體({$Field(id,GetInfoUrl,100,2)})}

    tips:上面紅色就是插入上面制作的文章列表標(biāo)簽,參數(shù){$Field(id,GetInfoUrl,100,2)}表示生成欄目ID號

    第三步:模板調(diào)用

    {SQL_循環(huán)欄目列表()}

  • 上一篇:網(wǎng)頁設(shè)計者如何提高網(wǎng)頁制作效率(一)     下一篇:怎樣通過SEO高效進(jìn)行海外推廣
    掃碼立即溝通
    公眾號加關(guān)注
    版權(quán)所有:西安兄弟信息科技有限公司 陜ICP備07012704號-8   地址:西安市三橋街道恒大都市廣場(1號線灃東自貿(mào)園站C1口)  營業(yè)執(zhí)照    網(wǎng)站地圖  
    關(guān)閉
    029-86512630 工作:8:30-17:30

    *