phpcmsv9如何实现添加栏目时不在首页内容区显示只在导航栏显示

之前王晟璟一直使用PHPCMSV9系统建过自己的个人门户网站,同时也建立了一个其他类型的网站,感觉非常不错,我不得不说PHPCMSV9的功能非常齐全,非常强大。

但有一点时常让王晟璟感到很烦脑,那就是在使用PHPCMSV9建立网站的时候,每当我们在后台添加了栏目,在网站的首页导航栏以及网站首页框架内容中会被同时显示出来,如果说我们添加的栏目非常之多,那么网站的首页版面就会变的非常非常的大,这可是我不想看见的事情,因为他使得整个页面看上去非常的不和谐,当然我想,其他站长应该也是不愿意看见这样的情况出现的吧。

那么怎么样让PHPCMSV9在添加栏目的时候只让它在导航栏显示,而不在首页下面的内容区显示呢,为了解决这个问题,于是翻箱倒柜各种搜,就看见了bcua的博客,他上面分享了来自他的方法,本人亲自测试,完全OK。

phpcmsv9如何实现添加栏目时不在首页内容区显示只在导航栏显示

phpcmsv9如何实现添加栏目时只在导航栏显示

在此非常感谢bcua博主的分享,让我能改变这个功能。下面我就整理并把它分享出来吧。

查看PHPCMSV9的官方文档以及模版,发现这种原因是由于PHPCMSV9采用的是循环调用语句,所以后台增加的顶级栏目一律会被显示在首页上。

这里以官方模板为例,找到网站的首页文件文件index.html,在phpcms/templates/default/content/下。

大概在54到56行,下面是loop语句调用顶级栏目的开始部分,只看到这里就足够了。

  1. {loop subcat(0,0,0,$siteid) $r}
  2. {php $num++}

在下面添加一个php if 语句…,catid为要忽略的栏目,如我这两个就是忽略1和2…

  1. {loop subcat(0,0,0,$siteid) $r}
  2. {php $num++}
  3. {php if($r['catid']==1 || $r['catid']==2)continue;}

最后保存一下,然后生成首页就OK了。这样我们还可以通过这种方式让我们的栏目想出现在哪里就出现在哪里。如果你也遇见类似问题,那就亲自动手试试吧。如有不懂或者不明白的,欢迎在下面留言交流讨论哦。

原文地址:https://www.cnblogs.com/jinshui/p/6021844.html