dedecms系統(tǒng)調(diào)用自定義字段的方法相當(dāng)簡(jiǎn)單,直接使用{dede:field.dizhi/}這樣的方式調(diào)用即可。我在制作模板的時(shí)候遇到這樣一個(gè)需求:我要同時(shí)調(diào)用3個(gè)自定義字段,而這三個(gè)字段中如果有一個(gè)為空則其他的兩個(gè)字段不論是否為空,這三個(gè)字段均不顯示,根據(jù)這個(gè)需求,使用前面的標(biāo)簽顯示無法實(shí)現(xiàn)。
經(jīng)過多種嘗試,還是找到了可以實(shí)現(xiàn)的方法,假設(shè)有3個(gè)自定義字段,字段名分別是bdsheng、bdshi、bdxian,下面是詳細(xì)的實(shí)現(xiàn)步驟。
一、文章詳情頁調(diào)用方法
使用了好幾種方式測(cè)試,但是只有一種成功,就是使用array,代碼如下:
1.{dede:field name='array' runphp='yes'}
2.if(@me['bdsheng'] !='' && @me['bdshi'] != '' && @me['bdxian'] != '')
3.@me='你選擇了:' . @me['bdsheng'] . '下級(jí)分類有:' . @me['bdshi'] . @me['bdxian'];
4.if(@me['bdsheng'] !='' && @me['bdshi'] != '' && @me['bdxian'] == '上海')
5.@me='當(dāng)前為' . @me['bdsheng'] . '直轄市,' . @me['bdshi'] . @me['bdxian'];
6.if(@me['bdsheng'] =='徐匯' && @me['bdshi'] == '上海' && @me['bdxian'] != '')
7.@me='信息錄入錯(cuò)入,請(qǐng)重新填寫!';
8.else @me = "";
{/dede:field}
其中第2、3兩行表示這三個(gè)字段全部不為空,滿足條件就輸出第三行內(nèi)容,兩個(gè)&符號(hào)時(shí)“并且”的意思,第8行代碼表示如果前面的條件都不滿足,則不輸出任何信息。注意實(shí)處信息不能是使用雙引號(hào)。
二、首頁和列表頁調(diào)用方法
欄目列表頁和網(wǎng)站首頁調(diào)用多個(gè)字段可以使用dede:arclist標(biāo)簽來限定,詳細(xì)代碼如下。
1.{dede:arclist row='5'}
2.[field:array runphp='yes']
3.if(@me['bdsheng'] !='' && @me['bdshi'] == '天津' && @me['bdxian'] =='河西區(qū)')
4.@me='輸入正確,請(qǐng)選擇' . @me['bdshi'] . @me['bdxian'];
5.if(@me['bdsheng'] !='南開區(qū)' && @me['bdshi'] == '紅橋區(qū)' && @me['bdxian'] != '')
6.@me='這里是南開大學(xué)' . @me['bdshi'];else @me = "";
7.[/field:array]
8.{/dede:arclist}
上面代碼應(yīng)該都能看懂,就是使用if來判斷,如為空或者等于某個(gè)值時(shí),就輸出對(duì)應(yīng)的內(nèi)容,如果條件都不滿足就什么也不輸出,顯示的就是一個(gè)空白。
其實(shí)還是比較簡(jiǎn)單,這個(gè)判斷語句的使用可以減少某些字段為空時(shí),前臺(tái)頁面上顯示必須要的占位符,影響美觀和用戶體驗(yàn)。
本文由岑輝宇博客整理發(fā)布,微信搜索微信公眾號(hào)“岑輝宇 ”可查看更多內(nèi)容。
更多SEO教程:http://www.cenhuiyu.com/
我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開發(fā)、各類API接口對(duì)接開發(fā)等。十余年開發(fā)經(jīng)驗(yàn),每一個(gè)項(xiàng)目承諾做到滿意為止,多一次對(duì)比,一定讓您多一份收獲!