【phpcms-v9】无子栏目的栏目如何既能显示频道页又能显示列表页.
第一:默认情况下,如果当前栏目没有子栏目,则点击当前栏目时,默认显示的是后台设定的列表页而不是频道页,那么如何在当前栏目下同时显示频道页和列表页呢?如当点击当前栏目时,首先显示的是当前栏目的频道页,再次点击【更多精彩内容。。。】时,显示的是当前栏目的列表页.
第二:需要修改index.php控制器中lists方法:
- if($type==0) { //0-内部栏目 1-单网页 2-外部链接
- $arrparentid = explode(',', $arrparentid); //当前栏目所有的父栏目组成的父栏目id数组
- $top_parentid = $arrparentid[1] ? $arrparentid[1] : $catid;//当前栏目的顶级栏目id
- //此行代码为weiyanhui添加,主要用来控制当前栏目下没有子栏目时,显示当前栏目设置的列表模板
- if(isset($_GET['y']) && $_GET['y'] == 1){//用来控制显示当前栏目的列表页【当前栏目无子栏目】
- $template=$template_list;//显示列表页模板,控制当前栏目显示列表页
- }else{
- if($top_parentid == 10){//控制当前栏目显示频道页模板
- $template = $template;//显示频道页模板
- }else{//正常情况
- $template = $child ? $template : $template_list;//$child,是否有子栏目: 1-有 0-没有
- }
- //$template = $child ? $template : $template_list;//$child,是否有子栏目: 1-有 0-没有
- }
- //$template = $child ? $template : $template_list;//此行为系统自带代码,暂时被weiyanhui注释
- //$arrparentid = explode(',', $arrparentid); //当前栏目所有的父栏目组成的父栏目id数组
- //$top_parentid = $arrparentid[1] ? $arrparentid[1] : $catid;//当前栏目的顶级栏目id
- $array_child = array(); //当前栏目下一级栏目的id组成的数组
- $self_array = explode(',', $arrchildid); //当前栏目的所有子栏目组成的id数组,包含当前栏目id自身
- //获取一级栏目ids //开源软件:Vevb.com
- foreach ($self_array as $arr) {
- if($arr!=$catid && $CATEGORYS[$arr][parentid]==$catid) {
- $array_child[] = $arr;//当前栏目下一级栏目id组成的数组,不包含当前栏目id
- }
- }。。。}
新闻热点
疑难解答