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)簽顯示無(wú)法實(shí)現(xiàn)。
經(jīng)過多種嘗試,還是找到了可以實(shí)現(xiàn)的方法,假設(shè)有3個(gè)自定義字段,字段名分別是bdsheng、bdshi、bdxian,下面是詳細(xì)的實(shí)現(xiàn)步驟。
一、文章詳情頁(yè)調(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)。
二、首頁(yè)和列表頁(yè)調(diào)用方法
欄目列表頁(yè)和網(wǎng)站首頁(yè)調(diào)用多個(gè)字段可以使用dede:arclist標(biāo)簽來(lái)限定,詳細(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來(lái)判斷,如為空或者等于某個(gè)值時(shí),就輸出對(duì)應(yīng)的內(nèi)容,如果條件都不滿足就什么也不輸出,顯示的就是一個(gè)空白。
其實(shí)還是比較簡(jiǎn)單,這個(gè)判斷語(yǔ)句的使用可以減少某些字段為空時(shí),前臺(tái)頁(yè)面上顯示必須要的占位符,影響美觀和用戶體驗(yàn)。
本文由岑輝宇博客整理發(fā)布,微信搜索微信公眾號(hào)“岑輝宇 ”可查看更多內(nèi)容。
更多seo教程:http://www.cenhuiyu.com/