国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

DEDECMS|帝國CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|蘋果CMS|極致CMS|CMS系統|

服務器之家 - 建站程序 - DEDECMS - dedecms使用sql語句調用文章靜態鏈接地址的方法

dedecms使用sql語句調用文章靜態鏈接地址的方法

2019-06-26 11:07織夢教程網 DEDECMS

這篇文章主要為大家介紹了dedecms使用sql語句調用文章靜態鏈接地址的方法,涉及SQL語句的使用與文章調用的技巧,非常具有實用價值,需要的朋友可以參考下

本文實例講述了dedecms使用sql語句調用文章靜態鏈接地址的方法。分享給大家供大家參考。具體分析如下:

很多時候我們用織夢后臺調用數據的時候,自帶的標簽很多時候都沒辦法調用我們要的數據,因此要自己寫sql去調用,之前有個問題搞了兩天都沒搞出來,后來看到下面這個文章,問題解決了.

使用dedecms這個程序建站有五年多的時間了,期間建了不少網站,歡迎各位朋友找我建站.

補充:

發布這篇文章后,無意間發現在了dedecms的GetOneArchive,只要傳入一個文檔id就可以獲得文章鏈接了,其實這個函數返回的的文章信息數組包含了:鏈接地址,標題,文章ID,欄目ID,這里只需要文章鏈接地址,具體代碼如下:

  1. {dede:sql sql="select * From dede_archives a where a.title like '%織夢建站%' and a.arcrank>-1 limit 8"}  
  2. <</code>li><</code>a title="[field:title/]" href="[field:id runphp='yes']$url=GetOneArchive(@me);@me=$url['arcurl'];[/field:id]">[field:title runphp='yes']@me=cn_substr(@me, 50);[/field:title]</</code>a></</code>li>  
  3. {/dede:sql} 

如果你僅僅需要調用文章的鏈接地址該方法不失為一個快捷的方法,文章下部分介紹的方法較為復雜,但如果你想調用文章鏈接地址的同時還想調用欄目名稱不妨試下.

為什么要使用dede:php,dede:sql

在一些比較復雜的調用中用dede:arclist標簽是解決不了問題的,比如說大家常說的調用某一會員發布的文章等等之類,這些一般要通過dede:sql標簽來實現.

今天我所說的調用也是比較特殊的就是在首頁調用指定關鍵字的文章,其實這個跟dedecms的相關文章標簽類似,這里給大家分享兩種方法.

dede:sql標簽調用指定關鍵字文章靜態地址,這里引用dedecms官方關于dede:sql的介紹.

Sql標記

功能說明:用于從模板中用一個SQL查詢獲得其返回內容。

適用范圍:非擴展模塊所有模板。

(1)語法:{dede:sql sql="這里寫sql語句"}底層模板{/dede:sql}

(2)屬性:[1] sql 完整的SQL查詢語句。

(3)底層模板:SQL語句中查出的所有字段都可以用[field:字段名/]來調用。

好了了解dede:sql標簽后,就可以根據自己的需求寫sql語句了,我這里是要調用指定關鍵字的文章,sql語句如下:

  1. "select * From dede_archives a where a.arcrank>-1 and a.title like '%腳本%' limit 8" 

語句解析:a.arcrank>-1限制調用已審核的文章;like '%腳本%'調用指定關鍵字的文章;limit 8為調用條數為8條

然后就開始寫完整的標簽和底層模板了,如下:

1、首先解決完整標題和截字問題:我使用的是[field:title runphp='yes']@me=cn_substr(@me, 50);[/field:title]這種方法相信大家也經常用到,這里就不多作介紹了,以后可能會專門弄個文章介紹這種用法。50就是截字長度

2、解決dede:sql標簽靜態文章地址問題:這里比較麻煩了,我在網上轉了一下,多數給出的解決辦法就是href="/plus/view.php?aid=[field:id/]",顯然這不是我想要的這不是靜態地址,而其他地址用arclist調用的又是靜態地址,結果就成了一篇文章有兩個地址一個靜態一個動態,這對seo來說顯然不友好,最好通過自己折騰終于成功了

3、解決id不能正確獲取的問題:之前沒注意到因為dede_arctype和dede_archives兩個表id字段名是一樣的,以至于底層模板獲取不到正確的id,之前select改了下,增加了別名。

dede:sql調用文章靜態鏈接地址的完美方法

  1. {dede:sql sql="select * From dede_archives a, dede_arctype t where a.typeid = t.id and a.title like '%生活小竅門%' and a.arcrank>-1 limit 8"}  
  2. <</code>li><</code>a title="[field:title/]" href="[field:array runphp='yes'] @me=GetFileUrl(@me['id'],@me['typeid'],@me['senddate'],@me['title'],@me['ismake'],@me['arcrank'],@me['namerule'],@me['typedir'],@me['money']); [/field:array]">[field:title runphp='yes']@me=cn_substr(@me, 50);[/field:title]</</code>a></</code>li>  
  3. {/dede:sql} 


不管怎么說總算還是實現了我想要的效果,后來想了想用dede:php標簽如何實現這個效果呢,其實方法和dede:sql標簽是一樣的,也就不多說什么了,直接貼代碼:

  1. {dede:php}  
  2. $dsql->SetQuery("select a.id as aid, t.id as tid,typeid,senddate,title,ismake,arcrank,namerule,typedir From dede_archives a, dede_arctype t where a.typeid = t.id and a.title like '%生活小竅門%' and a.arcrank>-1 limit 8");  
  3. $dsql->Execute();  
  4. while($row = $dsql->GetArray()){  
  5. echo '<</code>li><</code>a title="'.$row['title'].'" href="'.GetFileUrl($row['aid'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],$row['arcrank'],$row['namerule'],$row['typedir'],$row['money']).'">'.cn_substr($row['title'], 50).'</</code>a></</code>li>';  
  6. }  
  7. {/dede:php} 

希望本文所述對大家的dedecms建站有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 在线中文字幕av | 日韩欧美一区二区三区免费观看 | 噜噜噜在线 | 国产三级久久久久 | 91在线视频播放 | 黄色成人一级片 | 青青久视频 | 日韩精品一二三区 | 欧美视频三区 | 精品久久久久国产 | 中文字幕一区二区三区久久 | 国产福利视频在线观看 | 成人av在线网站 | av网站观看 | 在线中文字幕观看 | 精品无码久久久久国产 | 国产成人免费在线 | 一本大道久久精品 | 日本看片网站 | 国产精品一区二区久久 | 欧美午夜视频 | 超碰人人干人人 | 在线一级片 | 午夜电影网站 | 久久久高清 | 亚洲欧美国产另类 | 91精品麻豆日日躁夜夜躁 | 国产日韩一区二区在线 | 国产黄色片免费 | 精品九九久久 | 日韩一区二区三区在线观看 | 草草视频在线观看 | 欧美国产精品一区二区 | 精品无码久久久久久国产 | 欧美精品欧美精品系列 | 国产精品亚洲视频 | 国产成人免费在线 | 欧美综合在线观看 | 天堂免费在线 | 91精品国产综合久久福利 | 欧洲一区二区三区精品 |