發表日期:2017-11 文章編輯:小燈 瀏覽次數:1945
我們在使用織夢CMS制作網站時,對于某個字段,無論是默認字段還是自定義字段,偶爾會使用一些判斷語句來實現我們的需求。下邊列出了幾種常見的需求。以及字段的判斷輸出實例。
{dede:field name='ziduan' runphp='yes'}if(@me=='') { @me = '' ;}else { @me = "<div class='red'><a href='/.@me'>此處是自定義的內容</a></div>"; }{/dede:field} |
方法1,適用于內容頁
{dede:field name='array' runphp='yes'}if (@me['shorttitle']=='')@me=@me['title']; else@me=@me['shorttitle'];{/dede:field} |
方法2,適用于列表頁
[field:array runphp='yes']if (@me['shorttitle']=='') @me=@me['title'];else @me=@me['shorttitle'];[/field:array] |
[field:array runphp='yes']if(@me['risklevel']=="HR")@me="HR.png";else if(@me['risklevel']=="D")@me="D.png";else if(@me['risklevel']=="AA")@me="AA.png";[/field:array] |
以上意思就是說如果查詢得到的風險等級字段的取值是HR,那么將輸出HR.png, 如果查詢得到的風險等級字段的取值是D,那么將輸出D.png,如果查詢得到的風險等級字段的取值是AA,那么將輸出AA.png, 這里的HR.png,只是一個字符串,代表圖片文件所在的位置,你可以設置成任意的圖片路徑,上面的代碼是一種分支條件輸出語句,@me代表的就是輸出變量,剛進入標簽field:array時,@me代表數據庫的一條記錄,其數據類型是數組,我們根據其中risklevle的取值來判斷,從而將@me設置成不同的值,當退出標簽field:array時,@me的值就會被顯示在原位置。
以上分享結束,如有疑問可以在下邊加群留言跟進,織夢58小編會第一時間回復。
需要在模板里做一個小判斷,如果文章的價格為0時直接輸出其下載地址,否則直接輸出購買鏈接,那么這個時候肯定是需要運行runphp='yes'這個功能了,下面我們來看下代碼: 經過搜索發現兩個方法基本上可以實現 1、首先把需要調用其它字段的值放在公共變量里,然后再直接調用公共變量的值,看代碼
{dede:php}$GLOBALS['title']=$arc->Fields['title']{/dede:php}{dede:php}$GLOBALS['baidupan']=$arc->Fields['baidupan']{/dede:php}{dede:field.price runphp="yes"}if(@me="0")@me = "下載地址:".$GLOBALS['baidupan'];else@me = "商品(".$GLOBALS['title'].")購買鏈接為:XXX";{/dede:field.xxxx} |
2、直接使用name='array'將其它字段的值賦值到數組里,然后使用,看代碼
{dede:field name='array' runphp='yes'}if(@me['price']=='0' )@me = '<li><a class="demo" href="'.@me['baidupan'].'" target="_blank">下載:'.@me['baidupwd'].'</a></li>';else@me = '<div id="pdBuy" class="PDB2C_moban_warp" dataP="'.@me['title'].'" dataR="'.@me['price'].'"><img src="/uploads/allimg/170702/155R26021-0.gif"></div>';{/dede:field} |
上述多處需要注意符號,單引號,雙引號。
看到圖片就應該很熟悉了,日常做Dedecms模版的時候,首頁肯定會有這樣或那樣的文章標題列表,用{dede:arclist}調用列表出來是件很easy的事情這里就不過多敘述了,不太熟悉的童鞋可以去參考Dedecms官方文檔。這里我主要想說的是有點時候我們想在這個文章標題列表上做點小文章,比如取出的標題是當天發布的內容,則在標題后面加上new圖標;又比如頭條推薦的文章標題后面加上上圖里的top圖標等等,而單純透過{dede:arclist}里面的'flag'屬性是無法單獨判斷的,這就需要我們單獨做點什么了。既然需要判斷,自然而然的會令我們想到用'if',在Dedecms里面如果使用'if'判斷的內容還跟文章有關,那不得不提的就是[field:array]這個東西很強大啊,基本上你想要的東西都在這里面,下面來看代碼,先來兩個熱熱身: 1、循環判斷{dede:arclist}取出的標題是否為頭條
{dede:arclist row=4 orderby=pubdate typeid=2}[field:flag runphp='yes']if(@me == 'h'){@me='這篇文章是頭條推薦';}else{@me='這篇文章不是頭條推薦';}[/field:flag]{/dede:arclist} |
{dede:arclist row=4 orderby=pubdate typeid=2}[field:senddate runphp='yes']$now = time();$oneday = 3600 * 24;if(($now - @me) < $oneday){@me='這篇文章是今天新發布的';}else{@me='這篇文章不是今天新發布的';}[/field:senddate]{/dede:arclist} |
{dede:arclist row=4 orderby=pubdate typeid=2 titlelen='54'}[field:array runphp='yes']if(@me['flag'] == 'h'){@me="<li class='list '><a href='".@me['arcurl']."' title=' ".@me['title']."' target='_self'> ".@me['title']."</a><img class='listtop' src='".@me['templeturl']."/demo/images/top.gif' /></li>";}else{$now = time();$oneday = 3600 * 24;if(($now - @me['senddate']) < $oneday ){@me="<li class='list '><a href='".@me['arcurl']."' title=' ".@me['title']."' target='_self'> ".@me['title']."</a><img class='listtop' src='".@me['templeturl']."/demo/images/news.gif' /></li>";}else{@me="<li class='list '><a href='".@me['arcurl']."' title=' ".@me['title']."' target='_self'> ".@me['title']."</a></li>";}}[/field:array]{/dede:arclist} |
ID(同id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,description(同infos)filename, image, imglink, fulltitle,textlink, typelink,plusurl, memberurl, templeturlstime(pubdate 的"0000-00-00"格式) |
日期:2018-10 瀏覽次數:3616
日期:2018-10 瀏覽次數:3361
日期:2018-08 瀏覽次數:3398
日期:2018-06 瀏覽次數:3211
日期:2018-06 瀏覽次數:3060
日期:2018-06 瀏覽次數:3106
日期:2018-06 瀏覽次數:3371
日期:2018-06 瀏覽次數:3210
日期:2018-06 瀏覽次數:3123
日期:2018-06 瀏覽次數:3313
日期:2018-05 瀏覽次數:3217
日期:2018-05 瀏覽次數:4002
日期:2018-05 瀏覽次數:3128
日期:2018-05 瀏覽次數:3531
日期:2018-04 瀏覽次數:3998
日期:2018-03 瀏覽次數:3131
日期:2018-03 瀏覽次數:3013
日期:2018-03 瀏覽次數:3207
日期:2018-02 瀏覽次數:3204
日期:2018-02 瀏覽次數:3163
日期:2017-12 瀏覽次數:3299
日期:2017-12 瀏覽次數:3504
日期:2017-12 瀏覽次數:3682
日期:2017-12 瀏覽次數:3108
日期:2017-12 瀏覽次數:3079
日期:2017-11 瀏覽次數:3123
日期:2017-11 瀏覽次數:3191
日期:2017-11 瀏覽次數:3082
日期:2017-11 瀏覽次數:3219
日期:2017-11 瀏覽次數:3796
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.