phpcms建站-常用技巧
> 之前一段时间因为工作需要,研究了一段时间phpcms二次开发。看完官方手册后,对于建站还是一头雾水,网上的视频也是良莠不齐。自认为对于一个基本的企业站建设,主要的一些思路也就那样了,不过如果没有人能点一下还是很难的,因此准备写一下自己的心得。## 一 安装准备工作:* phpcms官网下载PHPCMS V9版本:http://www.phpcms.cn/* PHPCMS_V9安装说明 : http://v9.help.phpcms.cn/html/install/* PHPCMS_V9帮助文档 : http://v9.help.phpcms.cn从官网下载完版本后,按照安装说明文档一步步安装基本就没有什么问题(不过有两点需要提醒注意:1.安装过程中注意项目的某些文件的权限需要设置读写;2.当第一次进入后台后,生成了网址首页,有些时候重新访问首页时还是不行,将浏览器缓存更新一下即可。)。安装完后,再看一下帮助文档,可以让你快速了解phpcms的结构设计和二次开发。## 二 全局前面介绍了三个步骤,也给出了帮助文档,如果就直接可以了的话,我当然也不会写这篇博客了。这是因为虽然帮助文档里有专门的介绍到了二次开发,但是他里面只写了如何构建模块和数据库配置,也就是说,你看完后,学会了如何开发一个新的模块了。但是这对于一个构建一个新站来说,在一个新的样式里搞模块开发,还是不够。这也就是我们这篇博客的着重点:###1.分析一下网站[上一篇博客](http://liutao1995.top:2017/2017/02/22/jian-zhan-ji-ben-yao-dian/)里已经介绍到了。###2.在category页面显示导航![“category显示导航”](http://p1.bpimg.com/567571/b13b6012ce90c4a5.png)```
{php $j=1}{loop $array_child $cid}{php $chlidids = explode(',', $CATEGORYS[$cid][arrchildid])}{php unset($chlidids[array_search($cid, $chlidids)]);$n=1;}
{/loop}
```###3. 在list页面中显示:副选项![](http://p1.bqimg.com/567571/fe12bbf0ca21665c.png)```
{php $j=1;}{loop subcat($parentid) $v}{php if($v['type']!=0) continue;}
{/loop}
```###4.list页面显示: 内容 栏目ID的内容模块的点击排行榜![](http://i1.piimg.com/567571/187c2a6bbc641bbb.png)```{pc:content action="hits" catid="$catid" order="weekviews DESC" num="10"}
{loop $data $key $val}
{$val[‘description’]}
{/loop}
{/pc}```上面是变动的catid,catid可以赋值指定(比如用于首页)。见下面:```{pc:content action="hits" catid="7" order="weekviews DESC" num="10"}
{loop $data $key $val}
{$val[‘description’]}
{/loop}
{/pc}```### 5. show页面显示文章内容和图片 ![](http://i1.piimg.com/567571/a161abc4a8df15ed.png) ```
{if $allow_visitor==1}
{$content}
{/if}
``` 图片```
{$title}
``` ###6 .catid为7的内容模块的内容列表```
{pc:content action="lists" catid="7" num="1" moreinfo="1"} {loop $data $r}
{$r[content]} 22222
{/loop} {/pc}
```###7. 截取部分字符串```
{str_cut($val[description],112)}
```112是指的是字节 ###8. 单页![]()```{$title}{$content}```###9. 图片```
```###10. 时间```{date('Y-m-d',$r[inputtime])} ```###11.首页显示 ,推荐位ID为2的内容推荐列表![]()```{pc:content action="position" posid="2" thumb="1" order="listorder DESC" num="10"}{loop $data $r}
{date('Y-m-d',$r[inputtime])}
{/loop}{/pc}```## 注意:疑问?什么时候是用category页面,什么时候是list页面的模板呢?![](http://p1.bqimg.com/567571/c11b678ef614988a.jpg)在案例中定义了category和list和show,因此在频道栏目点击的时候,套用category页面。在子栏目中不定义category,只定义和父级相同的list和show页面。因此,点击子栏目后套用的是list页面。