dedecms系統(tǒng)調(diào)用自定義字段的方法相當(dāng)簡單,直接使用{dede:field.*/}這樣的方式調(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)用方法
使用了好幾種方式測試,但是只有一種成功,就是使用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í)還是比較簡單,這個(gè)判斷語句的使用可以減少某些字段為空時(shí),前臺(tái)頁面上顯示必須要的占位符,影響美觀和用戶體驗(yàn)。
本文由岑輝宇博客整理發(fā)布,微信搜索微信公眾號(hào)“岑輝宇 ”可查看更多內(nèi)容。
更多SEO教程:http://www.cenhuiyu.com/
申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!