DestoonB2B標(biāo)簽調(diào)用手冊

DestoonB2B標(biāo)簽調(diào)用手冊
什么是標(biāo)簽調(diào)用捺癞?
標(biāo)簽調(diào)用是根據(jù)調(diào)用條件(condition)從數(shù)據(jù)表(table)讀取調(diào)用數(shù)量(pagesize)條數(shù)據(jù)肛响,并按排序方式(order)排序仍律,最終通過標(biāo)簽?zāi)0宓牟季州敵鰯?shù)據(jù)。
可以看出,標(biāo)簽的工作分兩個部分壶谒,一是讀取數(shù)據(jù),二是顯示數(shù)據(jù)膳沽。

標(biāo)簽函數(shù)原型
標(biāo)簽函數(shù)保存于 include/tag.func.PHP
tag($parameter, $expires = 0)
$parameter 表示傳遞給tag函數(shù)的字符串汗菜,系統(tǒng)自動將其轉(zhuǎn)換為多個變量
例如傳遞 table=destoon&pagesize=10&hello=world
系統(tǒng)相當(dāng)于得到
$table = 'destoon';
$pagesize = 10;
$hello = 'world';
三個變量
$expires 表示標(biāo)簽緩存過期時間>0 緩存$expires秒;0 - 系統(tǒng)默認(rèn)標(biāo)簽緩存時間挑社;-1 - 不緩存陨界;-2 - 緩存SQL結(jié)果;
一般情況保持默認(rèn)不需要傳遞痛阻。

數(shù)據(jù)讀取過程
例如以下標(biāo)簽:

會被轉(zhuǎn)換為如下的SQL語句:
SELECT *
FROM destoon_sell
WHERE status=3
ORDER BY addtime DESC
LIMIT 0,10
讀出的數(shù)據(jù)會保存在 $tags 數(shù)組里

數(shù)據(jù)顯示過程
1菌瘪、通過標(biāo)簽?zāi)0屣@示
傳遞&template=abc給標(biāo)簽函數(shù),例如:

默認(rèn)的標(biāo)簽?zāi)0灞4嬖谀0迥夸?tag/目錄里阱当,例如&template=abc將調(diào)用模板目錄/tag/abc.htm模板來顯示數(shù)據(jù)
如果標(biāo)簽?zāi)0宸庞谄渌夸浨卫鏳ef,則傳遞&dir=def&template=abc弊添,系統(tǒng)將調(diào)用模板目錄/def/abc.htm模板

2录淡、直接在模板里循環(huán)數(shù)據(jù)

此寫法傳遞標(biāo)簽?zāi)0鍨閚ull,并且直接返回數(shù)據(jù)給$tags數(shù)組油坝,此時可以直接在模板里循環(huán)了
以下為一個完整的示例:

{loop $tags $t}
...
{/loop>

第一種寫法一般用于多次調(diào)用的數(shù)據(jù)嫉戚,第二種寫法一般用于只調(diào)用一次的數(shù)據(jù)。

常用參數(shù)及含義
moduleid
moduleid指模塊ID免钻,可在后臺模塊管理里查詢彼水。對于直接調(diào)用模塊的數(shù)據(jù),設(shè)置正確的模塊ID后极舔,將不需要傳遞table參數(shù)凤覆,系統(tǒng)會自動獲取。
例如傳遞moduleid=5拆魏,系統(tǒng)將識別為調(diào)用供應(yīng)信息盯桦,自動設(shè)置table參數(shù)為sell
table
table指表名慈俯,可在后臺數(shù)據(jù)庫維護(hù)里查詢。對于Destoon系統(tǒng)表拥峦,不需要加表的前綴贴膘;對于非Destoon系統(tǒng)表,需要填寫完整的表名略号,且傳遞prefix參數(shù)
例如對于Destoon系統(tǒng)表刑峡,傳遞table=sell,如果表前綴為destoon_玄柠,系統(tǒng)將識別表名為 destoon_sell
對于非Destoon系統(tǒng)表突梦,傳遞table=tb_abc&prefix=或者table=abc&prefix=tb_,系統(tǒng)將識別表名為 tb_abc
fields
fields指查詢的字段羽利,默認(rèn)為*宫患。可以傳遞例如 fields=title,addtime这弧,但是一般情況下無需傳遞娃闲,Destoon獨(dú)有的標(biāo)簽緩存機(jī)制會自動緩存查詢結(jié)果,不必?fù)?dān)心效率問題匾浪。
condition
condition指查詢的條件皇帮,如果不傳遞,則為1户矢,代表任意條件的數(shù)據(jù)(此項需了解SQL語法)玲献。Destoon所有模塊遵循統(tǒng)一標(biāo)準(zhǔn)開發(fā),所以很多條件是通用的梯浪。
例如 status=3表示正常通過的信息、status=3 and level=1表示級別為1的信息瓢娜、status=3 and thumb<>''表示有標(biāo)題圖片的信息等挂洛。
order
order指數(shù)據(jù)的排序方法(此項需了解SQL語法)。
例如order=addtimedesc表示按添加時間降序排列眠砾、order=itemid desc表示按itemid降序排列虏劲、order=rand()表示隨機(jī)數(shù)據(jù)等。
pagesize
pagesize指調(diào)用數(shù)據(jù)的數(shù)量褒颈,如果不傳遞柒巫,默認(rèn)為10。
template
template指指定的標(biāo)簽?zāi)0骞韧瑁绻粋鬟f堡掏,默認(rèn)為list,位于模板目錄/tag/list.htm刨疼,如果傳遞為null泉唁,表示不應(yīng)用標(biāo)簽?zāi)0宥炝洹⒁娚鲜鰯?shù)據(jù)顯示過程。

其他常見用法舉例

多表聯(lián)合查詢
例如查詢會員名為destoon的會員和公司資料亭畜,可以使用:
{tag("table=destoon_memberm,destoon_company c&prefix=''&condition=m.userid=c.userid andm.username='destoon'&template=list-com")}
destoon_member和destoon_company是表的實(shí)際名稱(包含表前綴)扮休,prefix=''表示系統(tǒng)不再自動在表名前加前綴

控制標(biāo)題長度
在標(biāo)簽里傳遞length參數(shù),例如&length=20表示20個字符長度(一個漢字占2個字符)拴鸵,一般情況建議用css隱藏多余字符(定義height和overflow:hidden)
傳遞length參數(shù)玷坠,系統(tǒng)僅對title字段自動截取,如果需要截取其他字段劲藐,可用dsubstr函數(shù)
例如{dsubstr($t[company], 20, '...')} 表示截取company字段為20個字符侨糟,截取后,結(jié)尾追加...

設(shè)置日期顯示格式
可以在標(biāo)簽里傳遞datetype參數(shù):
1 表示 年瘩燥;
2 表示 月-日秕重;
3 表示 年-月-日;
4 表示 月-日 時:分厉膀;
5 表示 年-月-日 時:分溶耘;
6 表示 年-月-日 時:分:秒
也可以在模板里直接使用date函數(shù),例如{date('Y-m-d', $t[addtime])} 表示將時間轉(zhuǎn)換為 年-月-日 格式

調(diào)用某一分類的信息
在標(biāo)簽里傳遞catid參數(shù)服鹅,例如&catid=5表示調(diào)用分類ID為5的所有信息凳兵。
如果調(diào)用多個分類,用逗號分隔分類ID企软,例如 &catid=5,6,7表示調(diào)用分類ID為5庐扫、6、7的所有信息仗哨。
分類調(diào)用默認(rèn)包含子分類的信息形庭,如果不需要包含子分類,可設(shè)置&child=0參數(shù)厌漂。
例如&catid=5&child=0表示只調(diào)用分類ID為5的信息萨醒,不包括子分類的信息。

調(diào)用某一地區(qū)的信息
調(diào)用地區(qū)信息和上述調(diào)用分類信息的方法完全相同苇倡,將其中的catid換為areaid即可富纸。

顯示信息所在分類
<ahref="{$MODULE[$moduleid][linkurl]}{$CATEGORY[$t[catid]][linkurl]}">{$CATEGORY[$t[catid]][catname]}</a>

控制列數(shù)
此項常用于圖片的布局,可使用cols參數(shù)旨椒。
例如調(diào)用12張圖片晓褪,一行顯示4個,共3行综慎,則傳遞&pagesize=12&cols=4
支持cols參數(shù)的標(biāo)簽?zāi)0逑辴humb-table.htm和list-table.htm
其中涣仿,thumb-table.htm顯示圖片列表,list-table.htm顯示文字列表
如果新建支持cols的標(biāo)簽?zāi)0寤蛑苯友h(huán)$tags寥粹,可參考以上兩個模板的寫法
上述效果可以也可以通過CSS實(shí)現(xiàn)变过,無需使用表格埃元,請自行書寫

顯示文章的簡介
使用{$t[introduce]}變量,如果要截取字?jǐn)?shù)媚狰,例如80字符岛杀,可使用{dsubstr($t[introduce], 80, '...')}

函數(shù)原型
tag($parameter, $expires = 0)
$parameter 表示傳遞給tag函數(shù)的字符串,系統(tǒng)自動將其轉(zhuǎn)換為多個變量
例如傳遞table=destoon&pagesize=10崭孤,系統(tǒng)相當(dāng)于得到$table = 'destoon'类嗤;$pagesize = 10;兩個變量
$expires 表示緩存過期時間

0 緩存$expires秒辨宠;0 - 系統(tǒng)默認(rèn)時間遗锣;-1 - 不緩存;-2 - 緩存SQL嗤形;一般情況保持默認(rèn)即可精偿。
常量
{DT_SKIN}
系統(tǒng)風(fēng)格網(wǎng)址。
{DT_PATH}
網(wǎng)站首頁網(wǎng)址赋兵。
變量
$tags
以數(shù)組類型保存標(biāo)簽調(diào)用的數(shù)據(jù)笔咽,可通過loop語法遍歷顯示。
$pages
保存數(shù)據(jù)分頁代碼霹期,僅在調(diào)用了分頁時有效叶组。
$MODULE[5][name]
ID為5的模塊名稱。
$MODULE[5][linkurl]
ID為5的模塊網(wǎng)址历造。
$CATEGORY[5][catname]
ID為5的分類名稱(僅變量$CATEGORY存在時有效)甩十。
$CATEGORY[5][linkurl]
ID為5的分類網(wǎng)址(僅變量$CATEGORY存在時有效)。
常用字段
title 標(biāo)題吭产; linkurl 鏈接侣监; catid 分類ID; introduce 簡介垮刹; addtime 添加時間达吞; 常用函數(shù)dsubstr($string,$length, $suffix = '')
將字符串$string截取為$length長,尾部追加$suffix(例如..)
date($format, $timestamp)
將時間戳$timestamp轉(zhuǎn)化為$format(例如Y-m-d)格式
標(biāo)簽?zāi)0?/strong>
模板保存于./template/default/tag/目錄;
建議不要刪除或者修改自帶的模板荒典,推薦在自帶模板基礎(chǔ)上新建模板并應(yīng)用。

1.標(biāo)簽格式的大致說明
<!–{tag(“moduleid=9&table=article_9&length=40&condition=status=3&pagesize=10&datetype=2&order=addtimedesc&target=_blank”)}–>
moduleid=9是資訊模塊ID, 模塊ID去模塊管理查看吞鸭;
article是資訊模塊目錄名寺董;
&length=40是標(biāo)簽截取字?jǐn)?shù)
&pagesize=10是調(diào)用條數(shù)
&datetype=2是顯示時間添加時間

2.調(diào)用最新加入企業(yè)
<!–{tag(“moduleid=4&table=company&condition=groupid>4&pagesize=10&order=useriddesc&template=list-com”)}–>
3.如何調(diào)用其中一個企業(yè)會員的供求信息及資訊
在condition=里加 and username=’xxx’ xxx為會員登錄名
4.如何調(diào)用供應(yīng)求購產(chǎn)品下的某個分類
調(diào)用分類下的信息可以設(shè)置 &catid=行業(yè)id&child=1 child=1表示同時調(diào)用下屬的行業(yè)
5.調(diào)用二級欄目信息列表
<!–{tag(“moduleid=$moduleid&table=article_$moduleid&catid=$catid&child=1
&condition=status=3&order=”.$MOD[order].”&pagesize=6&datetype=2&target=_blank”)}–>
如果你是在文章模塊里調(diào)用可以用上面的代碼 $catid 改為你要調(diào)用的欄目id即可
如果需要同時調(diào)用欄目下的信息 child=1即可否則 child=0
如果是在網(wǎng)站其他地方調(diào)用,可以用下面的代碼:
<!–{tag(“moduleid=9&table=article_9&catid=$catid&child=1&condition=status=3&order=addtimedesc&pagesize=6&datetype=2&target=_blank”)}–>
注意moduleid的值要與你調(diào)用的模塊id保持一致
補(bǔ)充:
下面這個在首頁調(diào)用成功
<!–{tag(“moduleid=9&table=article_9&catid=$catid&child=1&condition=status=3&order=addtimedesc&pagesize=6&datetype=2&target=_blank”)}–>
但是我想要資訊頁內(nèi)部的模版列表刻剥,也就是每條只顯示22個字遮咖。
6.首頁資訊欄目這里怎么調(diào)用
“9”為你模塊的ID
{php $C = get_maincat(0,cache_read(‘category-9.php’));}
{loop $C $k $v}
<ahref=”{$MODULE[9][linkurl]}{$v[linkurl]}”>{$v[catname]}</a>
{/loop}
7.公司列表不能控制字?jǐn)?shù)!造虏!
你可以直接修改 list-com.htm
{$t[company]} 為 {dsubstr($t[company],$length)}
8.TAG常用標(biāo)簽
{$CATEGORY[$t[catid]]['catname']}所屬欄目名稱御吞;{timetodate($t['addtime'], $datetype)} 發(fā)布時間
9.其他
你可以通過&template= 來指定標(biāo)簽?zāi)0?br> 如果沒用這個參數(shù)默認(rèn)是list
位于模版目錄tag目錄
資訊級別level 1級為推薦文章麦箍;2級為幻燈圖片;3級為推薦圖文陶珠;4級為頭條文章挟裂;5級為頭條相關(guān)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市揍诽,隨后出現(xiàn)的幾起案子诀蓉,更是在濱河造成了極大的恐慌,老刑警劉巖暑脆,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件渠啤,死亡現(xiàn)場離奇詭異,居然都是意外死亡添吗,警方通過查閱死者的電腦和手機(jī)沥曹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碟联,“玉大人妓美,你說我怎么就攤上這事⌒粒” “怎么了部脚?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長裤纹。 經(jīng)常有香客問我委刘,道長,這世上最難降的妖魔是什么鹰椒? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任畏纲,我火速辦了婚禮撵彻,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己椭盏,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布坷虑。 她就那樣靜靜地躺著秀姐,像睡著了一般。 火紅的嫁衣襯著肌膚如雪擂找。 梳的紋絲不亂的頭發(fā)上戳吝,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天,我揣著相機(jī)與錄音贯涎,去河邊找鬼听哭。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的陆盘。 我是一名探鬼主播普筹,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼隘马!你這毒婦竟也來了太防?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤祟霍,失蹤者是張志新(化名)和其女友劉穎杏头,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體沸呐,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡醇王,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了崭添。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片寓娩。...
    茶點(diǎn)故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖呼渣,靈堂內(nèi)的尸體忽然破棺而出棘伴,到底是詐尸還是另有隱情,我是刑警寧澤屁置,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布焊夸,位于F島的核電站,受9級特大地震影響蓝角,放射性物質(zhì)發(fā)生泄漏阱穗。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一使鹅、第九天 我趴在偏房一處隱蔽的房頂上張望揪阶。 院中可真熱鬧,春花似錦患朱、人聲如沸鲁僚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冰沙。三九已至,卻和暖如春执虹,著一層夾襖步出監(jiān)牢的瞬間倦淀,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工声畏, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓插龄,卻偏偏與公主長得像愿棋,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子均牢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 一糠雨、destoon的目錄結(jié)構(gòu)及一些核心的文件 Destoon也算是mvc框架吧,舉個例子 根目錄下的文件夾/com...
    layjoy閱讀 2,796評論 0 3
  • 一、destoon的目錄結(jié)構(gòu)及一些核心的文件 Destoon也算是mvc框架吧垮庐,舉個例子 根目錄下的文件夾/com...
    layjoy閱讀 2,063評論 0 4
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理松邪,服務(wù)發(fā)現(xiàn),斷路器哨查,智...
    卡卡羅2017閱讀 134,633評論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法逗抑,類相關(guān)的語法,內(nèi)部類的語法寒亥,繼承相關(guān)的語法邮府,異常的語法,線程的語...
    子非魚_t_閱讀 31,598評論 18 399
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,805評論 0 11