在上次分享的PHPCMS V9 文章列表循環樣式自定義方法后,有朋友再問起,如果怎么做自定義調用欄目循環列表,設置好某個欄目或者幾個欄目不顯示。下面,在此與大家分享Phpcms V9欄目循環調用采用IF判斷自定義不顯示指定欄目這一詳細方法。
首先,我們找出官方默認調用欄目列表循環的語句:在phpcms/content/header.html里邊,具體代碼為:
{loop subcat(0,0,0,$siteid) $r} {php $num++} <div class="w356 left display {if $num%2==0}marginleft10{/if}"> <div class="title left bold"><span class="right"><a href="{$r[url]}" class="bai">更多>></a></span>{$r[catname]}</div> <ul class="clear left display"> {pc:content action="lists" catid="$r[catid]" num="5" order="id DESC" return="info"} {loop $info $v} <li>·<a href="{$v['url']}" target="_blank" title="{$v['title']}"{title_style($v[style])}>{str_cut($v['title'],100)}</a></li> {/loop} {/pc} </ul> </div> {/loop}那么我們基于這段代碼,采用IF判斷,做到欄目循環調用自定義不顯示指定欄目。
具體原理很簡單:IF判斷如果ID是指定值,那么就跳過,如果不是指定值那么繼續。這樣就可以避開指定的ID,讓指定的ID不出現在調用欄目列表中。
具體自定義方法為:
在代碼開始部分,
{loop subcat(0,0,0,$siteid) $r} {php $num++}設置一個IF語句進行過濾:
{php if($r['catid']==1 || $r['catid']==2 || $r['catid']==3) continue;}類似這樣,要別的欄目就把ID加到這里,格式如 $r['catid']==id數字。
代碼解釋:“&”代表“并且”,“||”兩豎線表示“或者”的意思。
如果要設置某些欄目不出現,代碼寫成:
{php if($r['catid']==20) break;}這樣的話,欄目ID為20的不會顯示在欄目列表調用中了。
其實在后臺管理的內容 > 內容相關設置 > 管理欄目 >里邊,有一個設置可以設置隱藏欄目: