回答读者提问(20)——关于“内容管理系统”(CMS)
今天看到frankfang读者的问题,感觉是一个比较有普遍性的问题,可以在这里回答更深入地介绍一下。当然这里只是一个概括性的介绍。frankfang读者的问题是:
“我的问题就是有没有一整套的案例(包括很多页面的整套),不是一个页面的案例,我做网站时里面有很多的连接到新的页面,新的页面就是文字内容不同,布局都相同,这样整个网页就有很多的HTML文件,听别人说只要一点小程序就能搞定.所以想请教老师能不能提供一些——-典型的,整套的网页案例,给我们参考!!”
实际上这个问题已经不是如何制作出一个页面的问题,而是建立一个综合的网站的问题了。
历史回顾
首先回顾一下网站开发的历史,从中我们可以看出技术的发展趋势,相信对读者也会有所帮助的。互联网比较大规模的进入中国应该是从1998年开始的,而在当时制作网页,一般人基本上就是使用一种技术——“HTML”语言,在加上一些非常简单的图片。
这样制作出来的网页不但非常简陋,而且制作效率也很低。我们可以设想一下,网页是用HTML语言编写的,被称为静态页面。一旦写好,除非改写这些HTML源代码,否则无法更改网页上的内容。这样就会遇到一些问题无法解决。比如说,一个网站希望向访问者提供全世界10000个地区的天气预报信息,如果只有HTML作为工具,就必须每天为每个城市开发一个页面,以便访问者找到某一城市相应的页面,来获取信息。可想而知,如果每天要制作这么多网页,需要很大的人力,如果网站要求更复杂呢?这是一个不可能完成的任务了。
不完善的办法
那么怎么办呢?这时逐渐大家开始使用Dreamweaver这个软件了,Dreamweaver提供了一种称为“模版”的功能,也就是先制作一个模版页,然后产生出多个页面,分别填写不同的内容,这种方法不需要其他技术,但是如果你实际使用过,就会发现这还是比较麻烦,基本上还是“人肉”方式。而且对于真正复杂的页面,还是不现实的。即使是一个像我们前沿视频教室这样一个不算复杂的网站,要求能够不断地增加新文章、可以让读者留言,还可以回复等等,这种方式是完全不够用的。
服务器出场
那么怎么办呢?就必须要使用服务器的功能了,也就是说,网页必须是在服务器上动态生成的,同一个页面,在服务器上根据不同的访问参数生成不同的页面效果,这样就一劳永逸了。还用上面的天气预报的例子来说:只需制作一个页面,在这个页面需要显示天气信息的地方从数据库中取得相应数据,即页面的样子都是通过HTML来做好的,只是相应的数据从数据库中获取。那么只要做好一个页面,就可以根据不同的城市代码,从数据库中获取相应的数据,从而实现“一劳永逸”的效果。
CMS横空出世
这样问题就又出现了,网站的开发过程变的更复杂了,技术要求更高了,不但需要设计前台的页面效果,还需要开发后台的程序,这种程序的开发语言有很多种,现在流行的有ASP.net\PHP\Java等等,掌握这些编程技术都比学习HTML要复杂的多。要用这些语言写出一个完善的网站来,不是一件轻松的事情。
那么怎么办呢?逐渐地,人们发现,实际上网站无论多么千奇百怪,归纳起来功能通常很多都是十分相似的。比如要求能够方便地发文章、要能够让访问者留言,这可以称为“文章系统”或者叫“新闻系统”,再比如各种论坛也是大同小异的,还有比如博客网站,也是相似的。这样一些技术人员和软件公司,就仔细研究在某一领域的网站的共性要求,开发出一些通用的网站系统。这样要建立网站的人只需要把相应的系统安装到服务器上,就可以立即拥有一个完善的网站了,同时这些系统都是具有一定的灵活性的,可以进行网站外观和功能模块的定制,你会发现使用同一种系统大家出来的网站的外观是完全不同的,当然CSS在其中也发挥了巨大的作用,也就我们反复强调的网站内容与表现的分离。总而言之,这类系统都称为“内容管理系统”(Content Management System)。比如前沿视频教室使用的就是Wordpress这个系统,它是完全免费的开源系统。
具体怎么做?
好了,这样就简单了,你要建网站,首先要确定的是:你要做的是一个什么类型的网站,博客?论坛?商店?门户?教学?然后找到一个相应的,和你的需求最接近的CMS系统,然后安装好它,找一些相应的资料,学习如何使用它,如何定制功能,如何设置外观布局,然后你就专心于网站的内容就可以了。
当然,一个网站主要有三个方面:内容、表现、功能。
一个CMS系统可以提供相应的功能;你要建立一个网站,内容自然由你来负责,关于香车还是关于美女都由你来决定;来这里呢,你可以学习到一些关于表现形式的知识和技术,比如全世界可能有几百万个网站都和我们一样使用Wordpress来搭建的,但是外观却各不相同,这就是您掌握了CSS等网页设计的本事以后,随心所欲的设计了。
因此,现在要建立一个网站,通常不需要从零开始一点点写了,选用一个适当的CMS系统,真正把它搞通,搞明白,几乎所有的网站都可以建立出来。所以这里顺便可以说一句的是,网站建设是一个入门门槛很低,想真正做好又门槛极高的行业。
8,998


温老师,你还没给我送书中的源代码呢,你只是说没有其他的实力图标之类,只有书中的源文件,但是你没给我传过来,麻烦老师再给我送,谢谢。
温老师,我总结的添加CSS样式的原则,您看怎么样,有什么问题请指出
1.先对网页用标记选择器进行整体设计,如网页的字体,行距等。
2.然后用类选择器对少数特别的地方进行设置,如栏目标题,不同的标记可以应用同样的类选择器
3。如果某种样式在整个网页中只使用一次,还可用ID选择器定义样式,如#nav, #copyright
4。灵活运用复合选择器,可大大节省CSS代码量,并使CSS代码更清晰易读。
小唐 ,
总结的很好!
可以再加上一条:布局的时候,先定大块,然后逐步细化。
老师好,请问Wordpress这个系统的官方网站是多少?
在网上发现有很多相关的网站。
这个系统是国外的,官方网站是 wordpress.org 。不过中文化做的已经非常好了,你可以参考一下国内的wordpress.org.cn,是一个中文论坛,翻一翻帖子基本就知道用法了。非常容易使用,全世界可能上百万网站使用wordpress搭建的。
好的,多谢老师!
wordpress非常强大,很不错,你可以试试看。
老师,我大概看了一下,wordpress一般都是博客用,不知道网站适合不适合?
是的,Wordpress就是一个用于自己搭建博客的系统。看您的网站是什么要求了,如果内容很多,可以用其他的CMS系统,种类非常多,比如Joomla是一个非常好的综合的CMS,建立的网站就很丰富,即本上任何网站都可以建出来。当然使用起来也就麻烦一些。
比如我们这个网站就是用Wordpress搭建的,目前来看功能也还够用。因为内容并不是很多,简单永远是第一重要的原则。网站的内容远比形式重要。
老师速度真是快,本来还有些问题,呵呵,但我决定还是自己研究一下先,多谢老师的耐心解答。
老师,非常感谢您耐心解答。
我还想问问,关于Joomla对于使用者有些什么要求? 比如需要对哪些方面很了解? 有没有相关的中文教程? 谢谢老师!
生成静态网页有两种,一种是真正的生成静态网页,一种是通过服务器地址重写实现的伪静态。
后者肯定可以,只要服务打开了对URL重写的支持,这样做的目的就是为了搜索引擎优化。
前者joomla应该是不支持的,如果你的不是几万个页面,真的把页面全部转成静态基本上没有必要。至少这个不是一个十分重要的因素。凡事有利就有弊。
老师,最后一个问题,该系统能否自动生成静态网页? 我刚看了一下,没有看到相关的信息。 谢谢!
大多数系统都是PHP+mySql架构,要求不高,很多虚拟主机都可以。
中文网站也有不少,流行的系统中文化做的都很好。
http://www.joomla.cn/
老师,请问动易的CMS怎么样? 学了CSS+DIV后,要找个后台的CMS组合,做个网站,网站定位都策划好了, 现在就想找个好的CMS ,麻烦老师推荐一下。谢谢!
如果是综合性的网站,我还是觉得Joomla好,插件非常丰富,这对以后的扩展好处很大。因为你做一个站就至少希望一两年不更换系统,而经常会遇到新的要求,这都要求CMS有足够的灵活性。
老师推荐的都是国外的cms! 呵呵。。。
国内开发的CMS也很多,我没有试过,应该也没有问题,不过感觉国内的系统往往灵活性差一点,还有一点是国外的系统往往用的人更多,这样的好处是插件会非常丰富,所以这个只能先找一个试试看,如果不合适宜后再换,而且只有真正用过一段时间,才会有真正的理解,听别人讲的都不一定对。
您好啊,我想了解下你们i书里对滑动门的技术讲得详细吗?像网易的那种能做吗?还有最近tom改版后的可以关闭的层制作,上次买了你们的精通css+div觉得知识量太少了不过瘾啊,入门的看看很好但是深研究就不怎么好了,我对滑动门技术很感兴趣啊,我看了你们的所有视频但是关于他的还不是很多!
xubaoguo,
在《CSS设计彻底研究》中,我们在很多案例中用到了滑动门,实际上滑动门的思想很简单,但是却是非常有用,可以用在很多看起来完全不同的场合。
不过我感觉你对“滑动门”可能有所误解,比如你说的你说得网易的,我不知道具体指什么,但是我猜想可能你指的是Tab面板那样可以切换的面板,还有tom中可以关闭的面板,这都不是CSS中所说的“滑动门”,而且都需要Javascript编程才能实现,制作这些东西所要的技术中,CSS在里面占的比例不是很大。
仅使用CSS能实现的效果,我们在《CSS设计彻底研究》这本书里讲的基本上到头了。如果希望再往下,就得花力气研究Javscript和DOM编程了。当然,CSS是做Javascipt开发的基本功,需要掌握牢固。
那你们有没有打算开一些js的教程呢老师?
有的,这是今年的一个重点内容,在不久就会和大家见面的。敬请期待………………
不过一定要把CSS掌握扎实,这个对深入学习很重要。
还要麻烦老师一下,能否告诉我onmouseover 和onmouseout事件属于哪个范畴阿?我在DOM和js手册中找不到相关内容,请老师执教一二。谢谢!!!!
可能是你手里的手册有问题,在Javscript手册或书籍中应该是有的。
老师您好,前些时间把《精通CSS+DIV网页样式与布局》看完了,感觉很不错,只是书中没有一个详细讲解整个网页制作过程的实例,现在对于一些大型的页面不知道如何划分各个部分布局的,比如拿到淘宝这样大型的页面,搞不清它的页面是划分成哪几块的,所以也没法入手了。顺便请教以下老师,本人大学专业不是设计,也没美术基础,对于CSS这样纯代码的知识还比较容易掌握,但对平面设计和美术创意学习起来可能感觉效果不理想,我想请教下老师,对于我这样情况应该如何学习,要不要去培训?希望老师给我些针对性的建议。(找了两个培训机构,他们两个月的课程,开了网页制作三剑客,感觉时间有些短,可能学到的只是皮毛)谢谢。《CSS设计彻底研究》我应经买了。
czhubo,
《精通CSS+DIV网页样式与布局》第12章的3个案例都能独立做出来了吗?以及16~20这5个综合案例都能独立做出来了吗?如果这8个案例都能自己独立做出来,实际上基本上任何页面都能做出来了。CSS这个东西一定要自己实际做,仅仅看还是不够的,很多代码看起来都明白,但是真正一做才知道关键问题是什么。关于如何分块,等问题,我建议还是在把书仔细读一遍,把案例真正一遍看书,一边亲自做一遍,否则是很难理解的。
关于设计是这样的,美工部分,用这些软件的方法,比如Photoshop或者Fireworks这样的软件的使用方法,都可以讲一本书,但是都是操作,其实很简单,您可以看一看相关资料,掌握起来不困难。
但是会用软件,不等于你能画好看的东西,就像你会写汉字,但是当不了书法家,就像你会说汉语,但是当不了文学家,是一个道理。我个人建议,如果自己没有美术的基础和天赋,不用一定往这个上走,这个东西提高不是很容易的事情,做得好的都是从小就喜欢美术,学出来的,如果理工科出身还是往开发上发展比较容易,做前端开发也很有意思,比如以Javascript为基础的开发,而且市场很需要,工资很高的。此外,后台的开发,也通用是硬功夫,这都很适合理工科出身的人发展。
最后再说一下关于页面的整体布局,《CSS设计彻底研究》这本书的13和14章,对所有的布局情况都覆盖到了,无论多复杂的布局结构也都是这些模式的组合了。就好像如果掌握1+1=2,,那么从1加到100,1000或者更大,也无非就是反复重复而已了。学习任何东西,都要掌握到可以举一反三的程度,才是真正的掌握了。
希望以上的介绍对你有一些帮助!祝你学习顺利!归根到底做这些东西都是靠技术、或者说靠手艺吃饭的,一定要做得比别人都精才行。
谢谢您这样详细地给我解答,这些对我都很有启发。
我想问一下如果做开发,那CSS不是派不上什么用场了吗?
老师可以给我推荐几本开发方面的入门教材吗?
十分感谢您的解答。
czhubo,
你有所不知阿,CSS对于开发的作用比设计还要大,CSS是做开发的基本功阿,就像练武要先扎马步。这里说的是中前端的开发,比如使用中对页面进行控制,已经Ajax等。
我也说几句吧。。
我看此教程也有一段时间了。如上温老师所说,理科生确实不太适合做设计
我是理科生,对设计也尝试过,最终还是不尽人意,做不出什么东西,而在程序设计上也没什么大的发展,毕竟每个人的逻辑能力有差别,我觉的,大多说人都属于,逻辑能力不强,又没艺术细胞。我觉得我就是,所以我现在选择做中前端开发。
我的问题是,我如何才能把设计师设计出来的模板,完全的展示出来呢。。
小李,
理科生作开发应该没有问题的,如果不做开发,又不作设计,剩下的工作就没有太多了,那做什么呢?即使前端开,写JS代码,其实我觉并不比写后台程序简单。反而我个人觉得写后端程序更简单一些,因为模式很固定。而前端开发则灵活得多,也没有什么固定的模式。
不知道现在回复老师你是否能看到 其实我和小李的情况很像 也是理科生 但是对于设计的兴趣要大于开发 可是尝试过设计后 结果确实不尽人意 设计真的是要经过很长很长的一段时间去积累的 可以说真的是要从小就开始培养 后来我就转向前端开发 可是我们这里公司基本都把设计和美工当成一个职位(或者就是需要具备一些设计的能力) 不会设计什么网站美工啊 前端工程师啊 基本就都没戏了 现在我前端的一些东西也都有在继续学习 但是重点暂时转向了PHP 不过自己设计不行 开发又不强 但是选择了这条路 现在走得真的是很迷茫啊 希望老师指点一下
买了《精通CSS+DIV网页样式与布局》才知道这个网站。书几天就看完了,很不错,非常适合入门。特别是是讲了一些细节的处理,这点对新手特别有用。很多人学网页设计,往往只是学各种语言、工具,学完了仍然不能独立设计一个像样的网站,主要就是设计功力不足,很多细节也不知道如何处理。这本书就讲了很多这方面的东西,比如项目列表的图标制作,一些分隔线的制作等等,但我觉得这些还不够,希望你们能在网站上多提供一些例子,像圆角边框的制作,配色等。
想请教一个问题,CMS是否也可以用来建立企业网站?企业网站都有哪些需求?一般都是用什么方法制作企业网站?如果能用CMS可否推荐一些?
kevin ,
关于圆角、滑动门等更深入的内容,我们最近的新书《CSS设计彻底研究》中讲得比较深一些。如果有兴趣可以看一看。
关于CMS,当然是可以建立企业网站的,而且很多很多企业网站都是用CMS建立起来的,用CMS建网站关键就是先搞明怎么用,各个系统都有所差别。具体的种类很多,可以上我上搜一搜,有很多讨论的。如果喜欢用英文的,可以看看这个 http://www.opensourcecms.com/ ,国内也有很多非常好的CMS系统了。总之现在基于CMS建站是很好的起点。
恩,说的很好,不过我觉得前沿教室应该改版了,现在人气这么好,还用个博客系统根本不够用了吧?
用国内的phpcms dedecms。。 都很容易上手,可以做出几乎任何形式的网站来。
前沿真的可以考虑改版了。做个大型的教学网站,通过视频教程来吸引流量,做出特色,不光可以卖书,还可
以对vip会员收费。
bong,
您说在点子上!我们现在主要精力还是放在内容上,这个系统经过一年多的不断微调,相对比较稳定。如果要彻底换系统,还得慎重一点。我们感觉,Wordpress的可扩展性很强,还有潜力可挖。
我们希望能够为读者提供更多的内容,关于内容收费,我们觉得还不急,我们现在的内容还太少,我们希望增加更多的好内容。
如果有兴趣的朋友,可以和我们联系,大家一起合作!
前沿视频教室的内容版权属于北京前沿科技,http://www.artech.cn。Copyright 2006-2011
本网站使用了 WordPress 2.2 中文版 。