zblogPHP制作的各種CMS模板中,經常需要為分類列表模板設置不同模板樣式,比如分類同時有圖片模式、圖文列表樣式,此時分類模板的選擇往往采用編輯分類的時候選擇模板文件名,但不熟悉程序的小白來說這個方法還是有一定難度。
如上圖,很多模板用戶其實并不清楚或者經常設置錯這兩項導致網站打不開,此方法個人一直比較別扭,增加了zblog模板新用戶的使用難度,今天在升級ydproduct模板的時候,干脆拋棄這種方法,實現在后臺主題配置內更直觀的點選分類,實現更改所選分類模板樣式。
這種方法,更簡單粗暴,點擊其中的分類名稱,就會自動填寫分類ID,然后保存! 前臺就可以改變所選分類模板的樣式,一步到位,媽媽再也不用擔心我搞壞網站了!
要實現上述的方法,主題配置內的點選多分類自動輸入分類ID先不談,先分享下模板前臺如何判斷:
首先,舉例,已知分類ID為1,2,3,4,5 數字之間小逗號隔開,這一步很容易實現,下一步就是要在前臺加入判斷,當頁面的分類ID等于 1,23,4,5其中任意一個數字ID時候就輸出指定的模板樣式,否則使用另一種樣式。
php端: $id = 2; $subject = '1,2,3,4,5,12'; $pattern = '/(^|,)'.$id.'(,|$)/'; if(preg_match($pattern, $subject)){ echo $id; }else{ echo 'error'; }
那么如何直接在zblog模板文件中進行判斷呢?
{php} $cateid = $category->ID; $subject = $zbp->Config( 'ydproduct' )->catestyle; $pattern = '/(^|,)'.$cateid.'(,|$)/'; {/php} {if preg_match($pattern, $subject)} 分類模板樣式A {else} 分類模板樣式B {/if}
就這么簡單!