开发Drupal主题推荐工具

Drupal是目前来说最好的CMS,基于PHP+MySQL,除了本身高效的架构和丰富的扩展性,还有许多模块和资源几乎可以帮你做任何事情,你可以用Drupal搭建博客、论坛、电子商务、在线社区、相册、在线视频等许多类型的网站,这是WordPress和Joomla!难以实现的,当然Drupal上手的难度也较另外那两个要大,对新手来说,很多东西都比较抽象,而且还需要一些相关的专业知识,今天推荐一些开发主题Themes所需的一些有用的工具。

以下内容为本站原创,谢绝转载。

开发Drupal主题需要哪些知识?

首先你肯定得熟悉Drupal,否则根本也谈不到开发主题。除此之外还需要:

  • PHP+MySQL。主题因为是表现层的东西,用到的PHP和MySQL知识并不多,但如果知道什么是变量和运算,以及一些条件判断和循环控制,将会大有帮助。如果想要深入学习的话,推荐《Learning PHP & MySQL(第二版)》(O’Reilly)和《PHP 5和MySQL 5程序设计(第三版)》(Apress)
  • XHTML & CSS。XHTML和CSS是一定要掌握的,否则根本谈不到做主题,但也不必很精通,尤其XHTML知道基本的规则和标记就可以了,关键还是要培养良好的代码习惯(Best Practice),这样才能写出健壮的代码,也方便今后维护和升级,同时对SEO也有帮助,当然是在Google搜索退出中国之前。CSS建议花些时间好好学习一下,因为这个东西每多学一点都可以让你重新认识网页设计,而且无论水平高低都可以从CSS中获益匪浅。如果想要深入学习的话,推荐《Head First HTML与CSS、XHTML》和《CSS实战手册》,另外还有两本参考手册,都是O’Reilly出版的《HTML & XHTML权威指南(第六版)》和《CSS权威指南(第三版)》。这两本涵盖了几乎全部的内容,但实例较少,所以建议只作为一个查询和参考的手册,不推荐作为教程来阅读。

除了上述必备的知识以外,如果要想只出给人印象深刻的网站,下面的知识也应该掌握。

  • JavaScript & Ajax。这两个其实是一回事儿,关于什么是Ajax可以参考我翻译的另一篇文章《Ajax: 重新认识Web应用》,JavaScript语言应该懂得基本的语法规则,而且对于今后学习其他脚本语言,比如Flash的ActionScript都有帮助,但也不必十分精通,然后学习如jQuery和script.aculo.us之类的JS库,但不要一开始就接触这些类库,首先还是要打好基础,知道语言是怎么回事。同样推荐两本教程,《JavaScript实战手册》和《jQuery实战》。
  • Flash。Flash动画不必多做介绍了,但我不会,也没有可推荐的教程。

如果你熟悉以上这些知识和技术,那么你就已经是个不错的Web程序员和设计师了,当然最重要的还是实践经验,其实有很多优秀的大学毕业生走上工作岗位都遭遇这样的尴尬,代码写的很优雅,也很标准,但网页看上去却粗制滥造,毫无美感。我开始的时候也是如此,也可能是很多技术出身的程序员总爱犯这样的毛病,喜欢追求完美的程序,这样有利也有弊,还是要把握一条,网页是给人看的,而不是给机器看的。

上面推荐的那些教程,我都买过或至少读过,而且不止这几本。书其实也并不重要,重要的是你从书中领悟和学习了多少,并不是说买了一堆大师的作品,自己也就走上大师之路了,不刻苦努力是不行的。而且书本的知识只能是一个理论的指导,还是要结合实践才能真正提高自己的水平。

搭建Drupal的环境

Windows平台推荐使用WAMP,包括Apache、PHP、MySQL和phpMyAdmin等工具,XAMPP也不错,而且有多平台版,但我更喜欢WAMP。

Mac OS X自身已经集成了必要的工具,打开Terminal终端即可完成配置,不过还是推荐MAMP,尤其对配置环境不是很熟悉或者对命令行过敏的用户。MAMP有标准版和专业版,专业版提供了更丰富的功能和更多的控制,两个都可以。

另外还有一点就是注意服务器各程序的版本,比如Drupal 6.x就不完全兼容PHP 5.3,安装和运行时会报错,有时间再聊这事。

目前Drupal最新稳定版是Drupal 6.16,最新测试版是Drupal 7.0-alpha3,汉化工作也在紧张进行中,也欢迎有英文功底的你加入到Drupal汉化小组,为Drupal在中国的普及吧,贡献一点力量,详情点击:http://localize.drupal.org/translate/languages/zh-hans。

Drupal每一个大版本,就是”.”左边的那个版本都采用不同的模板引擎,所以模板在版本之间并不通用,但区别不是很大,Drupal 7还没有进入Beta,所以未来的路还很长,现阶段还是推荐学习Drupal 6的主题。

开发Drupal主题推荐的软件

编辑器

有很多人推荐记事本,纯粹起哄。

  • 文本编辑器
    • Windows: UltraEdit、EditPlus
    • Mac: TextMate、BBEdit、CSSEdit(For CSS)
  • 所见即所得编辑器
    • Windows: Dreamweaver、Expression Web
    • Mac: Dreamweaver、Coda、Espresso

我自己常用的是Dreamweaver和Espresso,之前用Coda也不错,就是一直没找到破解。

备选软件包括Photoshop、Fireworks、Flash等等吧,可以根据自己实际情况来选择。

浏览器

无论哪个平台都推荐使用Mozilla Firefox,兼容W3C标准,而且有丰富插件,本来想做一篇插件的专题,但一直也没腾出时间来,下面推荐几个我比较熟悉的。

  • Firebug。几乎是必备的插件,其他浏览器也有类似的功能,但没有Firebug好用,但Safari和Chrome很漂亮。
  • Web Developer。一个工具栏,提供丰富的网页控制功能。可以自由查看各种状态下的网页表现,非常方便。
  • HTML Validator。HTML代码验证,可以检查当前网页的代码是否符合W3C要求。仅限Windows。
  • Drupal for Firebug。Drupal专用插件,可以在Firebug中显示Debug和状态信息。
  • ColorZilla。提取网页颜色。

Drupal模块

  • Drupal for Firebug。与Firefox的插件配合使用,口味更佳。
  • Devel。很强大很丰富的一个开发包,也是个模块,主要面向插件和主题开发人员Debug。
  • Views。最流行的Drupal模块,一个可视化的SQL编辑器,用于过滤页面显示内容,比如我想在某个页面只显示某人的文章或某个相册里今年以来的图片,在Views里点点鼠标就可以了。是CCK的好伴侣,但CCK对主题开发帮助不大,虽然也是非常强力的模块,也是建站必备。

Drupal推荐主题

除了默认主题是个很好的学习范例以外,Zen Garden也是要强烈推荐的。最好的教程就是实例,研究大师的程序和代码可以事半功倍。学习大师的模仿代码和编程风格,而是设计和思维的模式。

Drupal教程

据我所知,国内还没有Drupal教程,Drupal中文站也不多,不能不说是一个遗憾。希望以后情况会越来越好吧。以下推荐一些英文的教程,有电子书也有视频。

书籍

  • Drupal 6 Themes: Drupal 6主题教程。
  • Pro Drupal 6 Development: Drupal开发教程,Drupal创始人严重推荐,推荐中级水平的站长阅读。
  • Using Drupal: O’Reilly出品,由Lullabot小组成员编写。

视频

  • Lynda.com – Drupal: Creating and Editing Custom Themes
  • Lynda.com – Drupal Essential Training
  • Lullabot – Theming Basics For Drupal
  • Lullabot – Advanced Theming for Drupal
  • Lullabot – Site Building With Drupal
  • Lullabot – Administering Drupal
  • Lullabot – Understanding Drupal
  • Lullabot – Learning CCK
  • Lullabot – Learning Views

Lynda是专业IT教学公司,出品的教程质量很高,不过大都是入门的。Lullabot是专门做Drupal教程的,除了这类成本大套的,还有Podcast上的章回小段。如果懂英文的话,这些都是非常好的资源。

可用的网站

  • Theme Garden: Drupal主题花园。
  • All Drupal Themes: Drupal主题站。
  • Drupal中文社区: Drupal中文社区。
  • Drupal花园: Drupal主题中文站。
  • Drupal用户联盟: Drupal中文用户联盟。

暂时就这些吧,我了解的也有限。以后发现什么好东西再补充

 

本文来源:http://www.baifeng.me/web/hosting/2010/03/1265/

 

你可能感兴趣的:(JavaScript,XHTML,Firebug,Dreamweaver,actionscript,themes)