phpcms 初次建站心得
最近要给客户建个网站,考虑到效率问题,直接找了个开源的phpcms,(现在被收购了,以前的时候我还知道是个开源的)。由于对这个东西不熟悉,原来就是了解一些,php的建站系统,php的MVC框架。故此,只要搞到模版,控制台,数据模型就OK。上干货。
第一步就是下载安装。此步跳过。
第二步就是修改模板文件。一般的企业网站该有的,phpcms都具有。所以根据需要,修改 templates/default/content/里的index.html,header.html,footer.html。企业网站网站不需要广告位,也不需要注册,广播等消息,主要是导航,和网站logo。所以把模板不需要的都干掉。
footer.html里面也一样需要干掉东西。加入自己的东东。下面说重点。
phpcms默认的模板有文章模版,图片模板,下载模板,视频模板。在templates/default/content/ 下分别以category,picture,download和video关键字标示。这四种模型就足够了。但是在模版里面不同的模型又分为几种不同的页面,如右图所示红色框内容所示,这四个文件是什么意思呢都以category开头。网站里有的栏目是需要二级导航的,这种情况,当从首页的导航点击之后进入的就回是这四个中的一个,在这四个页面里做子页面的划分。然后是以list开头的表示4个文件,这对应的就是列表。如http://v9.demo.phpcms.cn/网站实例所示的list页面(下图所示)。然后是以show开头的四个模板文件,这是不同模型下每一个内容的展示模
板。知道这个不同模板i对应的功能,做起来就容易多了,最起码知道当你的网站改到不同程度的时候要修改对应的模板。
要注意的是在修改模板的时候,模板里的数据都是一Smarty模板语言写入的。网站里面用的最多的phpcms的模板pc标签是
{pc:content action="lists" catid="$catid" order="id ASC" page="$page"}
这个函数的展示内容。这些内容可以看官网的开发文档,学习。
有时候你需要在数据上进行包装操作,这时候就需要写php函数了,也就是control。这个函数该写在什么地方呢,需要写在\libs\functions 下的extention.func.php里面。如果需要扩展新的函数就在这里面添加。同理如果想看看系统的自带的可用的函数在此路径下的global.func.php里面。这样就可以做出来你要的网站了。
在做这个网站的时候,我需要做的二级页面的导航效果如下,可以看出是三级导航的效果。在phpcms基础上,改进了代码用到了两个非常重要的函数
{php $i=0}{loop subcat($top_parentid) $v}{php if($v['type']!=0) continue;}<div class="accordion-group"><div class="accordion-heading"><a class="accordion-toggle {if $v[catid]==$catid||($catid==$top_parentid&&$i==0)}picture-nav-hover{/if}" data-toggle="collapse" data-parent="#accordion2" href="#collapse{$i}">{$v[catname]}</a></div><div id="collapse{$i}" class="accordion-body collapse {if $v[catid]==$catid||($catid==$top_parentid&&$i==0)}in{/if}"><div class="accordion-inner"><ul >{php $j=0}{loop subcat($v[catid]) $r}{php if($i==0) $obj=$r['catid']}<li><a href="{$v[url]}" >{$r[catname]}</a>{$j++}{/loop}</ul></div></div></div>{$i++}{/loop}
其中两点说明:1)$top_parentid 是当前页面的栏目所属于的顶层栏目的catid。2)subcat(id) 函数作用就是找到所传参数的所有子栏目。有了这些前台页面效果基本搞定,特效还是需要js来搞的。
后台页面:
phpcms有很多系统变量,比如后台登陆页面的logo页面,版权说明就是一个默认的变量,如果要修改要去哪里修改呢,在/languages/zh-cn 里的system.lang.php的93行。
后台管理有升级的时候经常会出提示,我要干掉提示要在哪里干掉呢,在\libs\classes 里的update.class.php里面。把notice的内容去掉即可
function notice() {return $this->url('notice');} 改成 function notice() {}
当添加内容的时候需要图片有个水印功能,这个图片我们可以干掉,在\statics\images\ 下面的water文件夹干掉。这样phpcms 找不到水印图片就会添加文字,我们只需要把文子修改掉即可。在\libs\classes 下面的image.class.php里面找到128行 函数water_maker 里面的参数$w_text换成你要的文字
function watermark($source, $target = '', $w_pos = '', $w_img = '', $w_text = '需要添加的文字',$w_font = 8, $w_color = '#ff0000')
最后如果想把后台弄的干净些,去掉用不到的功能,只需要在modules\admin\templates 里面修改index.tpl.php,main.tpl.php,header.tpl.php.
第三步修改样式。主要修改的css文件有两个:default.blue.css,和reset.css。两个文件。对首页和内容页面的修改集中在default.blue.css里。
完成以上流程,一个网站思路基本出来了。细节内容还是需要好好琢磨的,比如我这个网站没有另起一个新的网页。还需要进步的,敬请各位拍砖!
转载于:https://www.cnblogs.com/kukuchong/p/3543676.html
phpcms 初次建站心得相关推荐
- 【个人建站心得】网站备案,让你少走弯路
继上一篇[个人建站心得]wordpress页面真正静态化插件really static后,有朋友让我写一些建站心得,今天就来聊一聊我的网站备案经历. 网站备案实际上是空间连带域名一起备案,关于备案,我 ...
- 腾讯云部署LAMP_建站心得
本人最近正在捣鼓微信开发,这期间有微信开发的服务器配置,既然要服务器配置,就少不了LAMP平台的搭建(期间参考了阿里云的建站教程,但照搬肯定在腾讯云搭载不起来)可能有些步骤是多余的,错了的话的理解一下 ...
- 使用phpnuke建站心得
小弟自从2002年来到中国Linux公社, 被公社使用的PHPNUKE所吸引,自己也开始用了它做为建站的程序. 后来因为觉得太过正规,对于个性散漫的我更喜欢另类风格, 所以最后还是只采用了PHPBB ...
- 谈谈建站心得(转载)[精华]
从事互联网行业已经7年了,有一些感悟在脑中盘旋.经历了很多教训以及狂热,工作与生活给了我一些教训与心得,遇到一事情时,经常有一种似曾相识的感觉,但真要说出所以然,似无法将他们高度 ...
- bemusic,一个音乐网站建站心得分享
发现bemusic这个网站源代码大约在今年的4月中旬,之前和期间和测试过几个音乐网站源代码,如:phpsound,JYmusic,soundkit等,也测试过wordpress的几个音乐方面的主题,总 ...
- 建站心得之discuz门户程序相比ZBLOG具有哪些优势[图]
以前我是采用discuz门户程序建站的,因为个人觉得,这套程序确实不错,而门户discuz门户也可以生成纯静态HTML文件,这对于我们有特殊要求的站长来说,非常重要,因为纯静态不仅可以提升网页的访问速 ...
- 【个人建站心得】wordpress页面真正静态化插件really static
有好几周没来写博客了,不过每天都还会来博客园看看.前一阵子看同事建了个站,自己也摸索着看了些关于建站的资料,买了域名.空间,突击了些wordpress知识,开始搭起了属于自己的站(www.nhliwu ...
- 记本阶段建站心得,是走无限做垃圾站之路还是真正的开发之路
不知不觉,上班有三个月了,三个月除却一些公司里杂七杂八的事,我做了四个站,第一个是六安市志愿者会员管理系统,比较简单,用TP开发,从前台设计.布局,到数据库设计,再到后台代码,改了又改,最后花了近一个 ...
- Phpcms v9建站详细流程
1.创建数据库(如Phpmyadmin): 2.下载并安装phpcms v9: 3.将css.js.images放置在statics文件夹下,分别建新文件夹存放:模板文件放置在templates文件夹 ...
最新文章
- Jetty源码学习3-启动服务器
- 字母组成美丽的图形 c语言,[原创]美丽蝴蝶
- HTTP协议与TCP/IP协议的关系
- 不用精子就能繁育后代,科学家只用1个卵细胞就培育出健康小鼠,来自上交医学院 | PNAS...
- IIS 之 失败请求跟踪规则
- mongoDB3.0.2 升级操作
- django后台数据管理admin设置代码
- python 查询sqlserver 视图_SQL Server 2017 数据库教与学(教学大纲,含Python+SQL Server案例)...
- phpcmsV9 添加内容:如何“增加复选框、下拉菜单”(含案例、截图)- 教程篇
- 1.C#项目Java化注意事项
- python 学习总结----正则表达式
- tensorflow/pytorch 设置GPU的使用
- 1040. 有几个PAT(25)
- [LeetCode]Letter Combinations of a Phone Number
- python用def编写calsum函数_python高阶函数——返回函数(闭包)
- 灰鸽子***猛增五百多变种 网民生活受***监控
- offer来了(原理篇)学习笔记-第9章设计模式
- maven本地仓库配置
- linux cd系统下载地址,Mandriva 2008.0 正式版 CD、DVD HTTP下载地址
- mismatch,equal比较两序列