- {pc:content action="category" catid="0" num="25" order="listorder ASC"}
- {loop $data $r}
- <li><a href="{$r[url]}" {if $r[catid] == $catid } class="select" {/if}>{$r[catname]}</a></li>
- {/loop}
- {/pc}
如上面代碼,當前catid,等于接收到的catid,就會改變導航條菜單a的樣式,這樣可以滿足一般的需要,當時,如果導航菜單下面還有子類的話,點擊下面子類就不會這樣顯示了,原因是子類的ID肯定不等于當前欄目ID,除非要獲取頂級欄目ID,修改后的代碼如下:
- {php $topcatid=$CATEGORYS[$top_parentid][catid]}<!--獲取頂級欄目catid,但是單網頁模型的內容無法獲取-->
- {php if($topcatid=='')$topcatid=$catid}
- {php if($topcatid=='35' || $topcatid=='36' || $topcatid=='37' || $topcatid=='38')$topcatid=1}<!--公司介紹團隊介紹等單網頁模型直接賦值頂級catid為1-->
- {pc:content action="category" catid="0" num="25" order="listorder ASC"}
- {loop $data $r}
- <li><a href="{$r[url]}" {if $r[catid] == $topcatid } class="select" {/if}>{$r[catname]}</a></li>
- {/loop}
- {/pc}
這樣就可以實現PHPcms導航菜單欄根據欄目改變樣式了,上面{php if($topcatid=='35' || $topcatid=='36' || $topcatid=='37' || $topcatid=='38')$topcatid=1}這個IF判斷,一般的用戶不需要添加,這個是因為我上面有個公司介紹欄目,屬于單網頁類型,公司介紹后面有子分類,$catid分別是35到38,而$CATEGORYS[$top_parentid][catid]}這個是獲取不到單網頁類型的欄目的。
如果還有疑問,請到程序員人生網給我留言
上一篇 一次mysql優化經歷