3.1-制作強大的通用標簽_風訊Cms教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      什么是通用標簽?
      簡單地說,就是標簽中調用標簽 如:{FS_{FS_當前類目}_熱點}
      通用標簽有什么用?
      利用通用標簽可以讓N個類目共同調用一個模板,而顯示的內容又各不相同。
      它可以大大減少你制作模板的工作,也會給日常的維護帶來很大的方便。
      通用標簽的原理是什么?
      現在有多少個要表現的類就要寫多少個模板與之對應。 比如說:網頁技術下有ASP、JSP、PHP、JAVA、CGI等等一堆子欄目。每個子欄目需要寫一個對應的模板和它對應。因為每個模板上的“相關新聞”、“熱點新聞”等都不能用同一個標簽。假如寫一個可以自動得出目前欄目所在的父類的方法,放到一個公共模板里供標簽調用,無論有多少個子欄目頁面,只要顯示的欄目一樣,只需要寫二個模板就夠了。一個是Class_public.htm,一個是Detail_public.htm
      怎么實現呢?比如需要在asp,jsp,php,java,cgk幾個板塊中“熱點新聞”。只需要在Class_public.htm中定義{FS_{FS_當前欄目}_熱點新聞},然后去自定義標簽里加上{FS_asp_熱點新聞}{FS_jsp_熱點新聞}。。。等就可以了。好象講了半天也沒說清楚~。
      PS解釋下:{FS_{FS_當前欄目}_熱點}
      會自動先把{FS_當前欄目}得出來,(當前欄目也是自動獲取的,不需要指定) 假設當前欄目的名稱是asp,那么就變成了{FS_asp_熱點}。只需要在標簽庫中有{FS_asp_熱點}就可以顯示ASP的熱點新聞了~

      實現通用標簽需要改三個頁面。不要嫌麻煩,它真的會帶給你前所未有的輕松!
      建議先備份下述三個文件:
      Admin\Refresh\RefreshFunction.asp
      Admin\Refresh\Function.asp
      Admin\Refresh\SelectFunction.asp

      一、打開Admin\Refresh\RefreshFunction.asp ,拉到倒數第二行(也就是%>前面),,把下面的代碼復制上去
      '******************************
      '根據ID得到當前所在欄目的名稱
      'author:lino
      'Start
      '*****************************
      Function ypren()
      Select Case RefreshType
      Case "Class"
      ypren = GetClassNameById(RefreshID)
      Case "News"
      ypren = GetNewsClassNameById(RefreshID)
      Case "Special"
      ypren = GetSpecialClassNameById(RefreshID)
      Case "DownLoad"
      ypren = GetDownloadClassNameById(RefreshID)
      Case Else
      ypren = ""
      End Select
      End Function

      '欄目名稱
      Function GetClassNameById(ClassID)
      Dim SqlClass,RsClassObj
      if ClassID = "" then Exit Function

      '**********假如是3.1版,把下行NewsClass改成FS_NewsClass
      Set RsClassObj = Conn.Execute("Select ClassCName from NewsClass where ClassID='" & ClassID & "'")
      if Not RsClassObj.Eof then
      GetClassNameById=RsClassObj("ClassCName")
      end if
      RsClassObj.Close
      Set RsClassObj = Nothing
      End Function

      '新聞所在的類目

      Function GetNewsClassNameById(NewsID)
      Dim SqlClass,RsClassObj
      if NewsID = "" then Exit Function

      '**********假如是3.1版,把下行News改成FS_News
      Set RsClassObj = Conn.Execute("Select ClassID from News where NewsID='" & NewsID & "' ")
      if Not RsClassObj.Eof then
      GetNewsClassNameById=RsClassObj("ClassID")

      查看更多 風訊cms教程  風訊cms模板

      共2頁上一頁12下一頁
      來源:模板無憂//所屬分類:風訊Cms教程/更新時間:2006-06-16
      相關風訊Cms教程