Drupal大学精彩问答-如何有效的学习Drupal

Drupal大学精彩问答-如何有效的学习Drupal
http://www.drupal001.com/2014/03/how-to-study-drupal/

问:请教各位关于drupal整个学习的一个过程?
“在学习一样新鲜事物的时候,往往会发现其中好多方面或是分支知识储备不够,然后转去学习别的知识点。比较困惑,就想请教各位关于drupal是一个怎么样的学习过程?

目标:能够完成普通的企业站和一些简单需求的网站。”

原文地址:http://drupal001.net/question/229

 

答:

——————————分隔符————————————–

于志成 喜欢折腾,爱好技术,宅,认真,懒
“首先要看你如何定位你的学习目标,比如你的目标是做简单的网站,最好时间就不要花在诸如研究Drupal各个知识点是如何实现上。
你需要学的是:
1. Drupal的基本术语,比如node, content type, user, user role, permission, taxonomy, cck/field, module, theme, views, template, menu等等,就不一一列举了。
2. 然后,你需要学会使用内置模块,通过配置,根据需求,实现网站的基本数据结构,包括几个内容类型来容纳数据,几级菜单来做导航,几个分类和标签来标记内容
3. 在理解主题机制的基础上,讲各个页面theme成想要的样子
4. 如果默认的列表满足不了全部需求,你可能需要理解和使用Views模块
5. 如果还需要一些其他的功能,你需要学会利用Drupal官网的模块库资源,找到自己需要的功能模块。

以上是学习Drupal制作简单网站的一般流程,如果每一个步骤你都能做的很好,你就能学会80%要学的Drupal知识,但花费的时间只占你整个Drupal学习时间的20%。

但如果你想成为一名Drupal高手,你需要花费80%的时间,去把那20%的晦涩难懂的Drupal底层理论,各个重量级模块的扩展,各个模块之间的配合,各种最佳实践融汇贯通。”

——————————分隔符————————————–

幽灵 幽灵古堡

谢邀,个人认为根据目标水平不同,可以分为不同阶段:

  1. 简单建站:要达到这个水平并不难,熟悉一些常用模块,能够下载需要的模块或主题并将其安装在目标网站上,熟悉一些drupal的术语,如content type,taxonomy等。
  2. 高级建站:达到这个水平,需要付出一些努力,常用模块基本上要做到随需随用,能够根据需求确定模块的使用,至少能在需要的时候找到解决问题的方法,即使是利用网络资源;能够进行简单的定制,对drupal的实现方式有一定的理解,能依照drupal的标准完成需求。
  3. 简单开发:根据需求定制模块和主题,这需要至少会php、js、html、css,可以不必精通每一种,但至少精通其中以两种,这里分模块开发和主 题开发,不同方向需要的技能也各不同,功能开发者需要会php,并且熟悉drupal核心以及常用模块的API,并能熟练应用;主题定制者至少要会 html和css,并且熟悉drupal的主题机制,能够对模板进行覆写,并且需要的时候要能在template.php中进行一些定制修改。
  4. 高级开发:要达到这个水平,需要不懈的努力,不管是主题开发还是模块开发,都要求能依据drupal的代码标准,制作出主题或者模块,模块和主题相互之间的交叉地带也都横沟搞定,模块内自带的模板文件和样式表并提供覆写机制,主题内的处理过程等等。
  5. 补充:除此之外,高级点的还会涉及到多人协作开发,这里相关的软件工程知识也成了必须,版本控制等等一系列技能也需要掌握。

以上愚见,望指正。

——————————分隔符————————————–

yangbo

就达成你所提的目标,学drupal theme机制即可。

首先理解一下几点:

  1. Drupal所有输出,要通过theme;
  2. theme根据一个theme的“注册表”,调用相应的输出函数输出;
  3. 这个“注册表”是可以更改的。更改的方法为:定义一个特定命名模式的函数,drupal术语为hook。

以上三点为深入浅出故,从简叙述,但依次大意,再配合详细文档,理解drupal的theme机制不难。

如果想玩drupal玩的好,建议:

  1. 阅读drupal源代码,弄懂一个请求过来,到返回结果(一个页面),drupal经历了哪些步骤,干了哪些事,原理弄懂了自然“变化神通,游戏无碍”;
  2. 理解open source的理念,按open source的理念去参与drupal社区。

——————————分隔符————————————–

流云 爱生活,爱Drupal

就说我自己,刚毕业时就用了drupal,就是从用开始的,一开始是偏向主题前端开发, 因为普通站点主要就是用第三方的模块搭功能,主要是主题前端要定制的较多,持续了有半年左右我才开始真正的像模块开发靠拢。架构方面的经验也是通过项目的 积累积攒的,所以同意一些朋友所说的,有项目实践才是最重要的,否则你自己学了那么多也不知道到底怎么用。

刚巧我们公司最近有新人加入,以前都没接触过drupal,我去给他们培训。因为我们不是要做项目外包,而是直接维护开发产品。所以主要培训方向是模块开发,不需要去考虑项目需求和架构层面的。

计划是大概1-2周时间讲完下面的培训内容:

  1. 页面内容的组成:页面,区域,区块
  2. 节点,内容类型,字段
  3. 用户,分类,菜单,评论
  4. 钩子,事件,动作,rules
  5. 主题模版系统
  6. views
  7. 常用模块
  8. 系统常用配置
  9. 表单
  10. 常用API
  11. Drupal执行流程

完了就直接上来跟着开发实践。到时候看看效果如何。

大家如果有什么建议也可跟我说说,谢谢。

 

Tags: