通過cmstop的content標籤無法在列表頁面直接調用摘要,需要用到一個專門摘要函數{description($r[contentid])},如果不想用這個函數的話也可通過以下db語句查詢article表中的摘要內容;db標籤支持標準SQL語句,在語句中可以直接插入系統標籤變量。
<!--{content catid="$catid" orderby="published desc" size="$pagesize" page="$page"}-->
<li><span>[{date('n月j日 G:i', $r['published'])}]</span> <a href="{$r[url]}">{$r[title]}</a>
<p>
<!--{db sql="SELECT * FROM `#table_article` WHERE contentid=$r[contentid]"}-->
{str_cut($r[description],256,'')}
<!--{/db}-->
</p>
</li>
<!--{/content}-->
官方提供的文檔內容;
db標籤
作用:通用的數據庫數據調用方法,使用自定義SQL語句調用本地或遠程數據庫的內容;
參數對照表:
參數名 |
必選 |
說明 |
dsn |
否 |
數據源名稱,當需要調用的數據庫非當前系統的數據庫時,可以先在後臺添加好所需數據源,設置到數據庫連接相關信息。通過此參數調用,默認爲當前系統的數據庫。 |
dbname |
否 |
數據庫名,當需要調用的數據庫帳號和當前系統相同而數據庫名不同時使用 |
charset |
否 |
數據字符集,當需要調用的數據和當前系統字符集不同時設置,數據輸出的時候系統會根據此設置自動轉碼 |
sql |
是 |
任何符合規範的SQL語句,數據表的前綴可以用 #table_代替 |
page |
否 |
當前的頁碼數,默認爲0,即第一頁 |
size |
否 |
限制查詢返回的條數(必須是正整數),默認不限制 |
offset |
否 |
數據庫查詢結果偏移值(必須是正整數),默認值爲 0,例offset=”1”代表從第二條數據開始調取。若指定了page參數,且page>0,則offset參數無效。 |
return |
否 |
返回值變量 return:返回結果變量名,默認爲 r |
示例:
<!--{db dsn="empirecms" sql="SELECT `id`,`onclick` FROM `phome_ecms_article`" size="12"}-->
{$r[id]}, {$r[onclick]}
<!--{/db}-->
上例說明:輸出從外部數據源empirecms的phome_ecms_article表中提取其字段id及onlick內容並顯示,條數限制爲12。
示例:
<!--{db sql="select * from #table_content where catid=$catid and modelid=1 and status=6 order by published desc"} -->
<a href="{$r[url]}">{$r[title]}</a> {date('n月j日H:i',$r['published'])}
<!--{/db}-->
上例說明:上例輸出從content表中選取的欄目id爲$catid的,內容模型爲1,並且處於發佈狀態的內容,按時間倒序排列。
注:{content}、{discuz}、{phpwind}、{shopex}標籤均可使用{db}的參數,但反過來無效,即{db}不能使用它們的參數 。通過{content}標籤調用的數據均爲status=6的數據,所以如果要通過{db}標籤調取與{content}標籤相同的數據,則需添加status=6的條件。