九月 2009

展望Drupal的未来

译者注: 以下是翻译自drupal的创始人Dries的一篇文章,文中提到的技术涉及他们的一个产品http://drupalgardens.com, 我看过drupalgarders的演示demo后,深感震撼,同时也为drupal程序员以及drupal设计师的未来感到担忧,看后,我们要思考一个问题:我们最终会不会被取代?
=============================================================

在上个月Yahoo举办的开源CMS大会上,我讲到关于成功的密诀-用互联网取代中间环节。

Amazon取代了书店,iTunes取代了音像店,新闻类网站取代了传统的报纸和其它广播电视媒介,eBay取代了实体店,旅游类网站取代了旅行社,在线相册系统取代了照像馆,等等,等等。

当然,这二者也不是水火不相容,书店,音像店,报纸,实体店铺,等,仍然有它们的市场,它们会一直存在下去,但是,网上的相应服务会对他们造成相当大的压力。

另一方面,我们也清楚地知道,将来的一个趋势是:那些取代传统行业,而依靠互联网发展起来的新秀,将更容易取得成功。 那些取代中间环节的网上产品和服务,将会取的巨大的成功。 这就是一个成功的秘诀!

带着这个理念,我们再来看Drupal的发展,Drupal能取代什么?

坦白地说,Drupal已经取代了网站管理员,还记得你上次雇佣一个网管去手动修改网站的HTML和CSS是什么时候吗? 现在,你自已可以轻松地输入,格式化一遍将要发布的文章。我们用网站管理员的时代已经一去不复返了。发布工具,和内容管理系统,例如Drupal,取代了他们.

让我们再想的远一点。未来,Drupal会取代什么人? 是drupal的CCK和VIEWS取代的那些程序员吗? 答案,我认为是“是的!”。 现代的CMS正在逐步取消程序开发者。 终端用户可以为单独的一个人,不论你是计算机外行不是内行,都能操作整个框架,方便地使用工具。

如果我们能取代网站管理员和网站开发者,那么,下一个问题是,我们能否取代网站美工(Designer),大多数人倾向于回答,不能!也许会有人说,这太难了。尽管这是个难题,但是,我们还是有很多地方可以取代美工的工作。正想我们大多数时候还是需要网管和开发者做一些特殊的任务一样。我们不能完全取代网站设计者,有多少个美工的工作能被技术取代,能被角本取代?

Drupal5的theme自定义颜色的功能向这方面迈了一大步。它可以让你在任何时候,方便容易地改变你网站的颜色,不需要一点网站设计技术。我们在将来也可以建造一个选择器,让用户可以选择不同的结构,例如,不同的头部格式等等。有很多地方我们可以做,这样可以让用户根据自已的需要来定制。

对那些有怀疑态度的读者,请记住一点,第一个发明蒸气器的人,曾被认为是疯子! 但是在接下来的一百多年间,我们成功地完善了这个技术,并且构建了整个工业化社会。

一样,我认为,取代网站管理员,程序员和设计人员,是一项非常大的进步,这也正是drupal正在做的,正像蒸气器可以让一个人方便快速地从一个地点到达另一个地点一样,我们努力让每个人都可以建一个强大的网站,帮助你的用户更快地会使用整个网站。 取代中间环节就是取消了这些障碍。


本文永久地址:http://drupalsh.cn/node/166 , 转载请注明出处.

drupal多语言站中手工输出的分类(taxonomy)无法翻译的解决办法

相信多数人选择drupal建站的原因,是冲着它对多语言的完美支持来的。

关于drupal多语言的成功案例有很多,例如:http://www.cai.org/

要启用多语言功能,得先开启drupal默认带的local模块。但是它的功能有限,例如不支持菜单,分类(taxonomy)的多语言化等。这时候大概都知道,有个叫 Internationalization (i18n) 模块 http://drupal.org/project/i18n .它解决了多语言站的绝大部分问题,包括菜单的翻译,分类的翻译,大致看了一下,i18n包括了以下几个子模块:i18nblocks ,i18ncontent, i18nmenu, i18npoll, i18nprofile,i18nstrings, i18nsync,i18ntaxonomy,i18nviews,如果你的站只是堆积模块搭建的,那么i18n应该能够应付你遇到的所有多语言问题。

但是如果你的有些内容是自已输出的内容,例如分类(taxonomy)信息,那么用i18n模块就会失灵。说起分类,drupal中有很多这方面的API,用起来真是太方便啦,例如taxonomy_get_term(), taxonomy_get_children(), taxonomy_get_tree()等等,利用这些api,你不用写一句sql语言可以执行几乎所有关于分类的动作.

如果你的网站的分类是用这些API输出的,那么当切换多语言的时候,这些分类是不能随着改变的,即使你用了i18n模块,我就遇到的这样的问题。在drupal.org搜了大半天,然后完全读了i18n模块的代码,终于发现有一个函数能解决这个问题,函数使用方法如下:

<?php

对不起,此内容只有注册用户能见,请先注册或者登录

?>

这也许是解决这个问题的唯一方法,至少到目前为止,我还没有找到更好的办法。

另外,drupal多语言的切换默认是一个block,也就是菜单的样式,如何做像这样的下拉框多语言切换功能呢,这里也有一段代码附上,用起来非常简单,你的需要用的地方 print出来就可以了

<?php

对不起,此内容只有注册用户能见,请先注册或者登录

?>


本文永久地址:http://drupalsh.cn/node/164 , 转载请注明出处.

Drupal 一些经典案例展示

说起drupal,确实越来越流行,特别在国外,很多的社会团体网站,公司网站等都采用了drupal来完成,从这里也可以看到对drupal的认可,下面列出的部分网站地址,drupal案例展示网站地址如下:
http://drupal.org/cases 列出的部分网站地址:


本文永久地址:http://drupalsh.cn/node/165 , 转载请注明出处.

网站换新服务器了

  终于决定换了。之前用的康盛创想的主机,它们的产品 - discuz,大名鼎鼎,也是国内PHP业的老大。当时正是冲着他们的名气才买的。可后来,让我有点失望,它们对drupal支持不尽完美,而且控制面板提供的功能非常有限。刚开始竟然不支持drupal默认的.htaccess, 询问客服,他们也不知道是怎么回事,最后害的我一条一条注释掉里面的代码,才找出可行的办法,但是还是不支持图片上传功能。

  前段需要网站备案,竟然边Email通知也没有,就把我网站关了。唉。。。。,不说了,不过他们的客服态度还算不错,回复问题很及时,就算是夜里十二点问,很快就会回复。

 现在用的主机真是超强大,正如宣传上所说,专业的drupal空间。我用后发现,完全支持drupal的各种需求,速度也不错,客服非常耐心并且也是drupal专家,安装时遇到的小问题都可以解决。最主要的是非常便宜,它们的主机是真正的物美价兼!

有想购买的朋友可以参照http://drupalunion.com/kongjian ,他们的网站有一点是不太好联系,如果想购买,可以通过http://drupalunion.com/contact 发邮件询问,回复得也挺及时的。


本文永久地址:http://drupalsh.cn/node/161 , 转载请注明出处.

图文教程-在drupal中用views模块过滤内容

不得不又提到了这个强大的模块-views. 它内设的强大功能远远超出我的想象。今天就介绍一下,如何用views来作为一个搜索模块过滤内容。drupal的模认搜索功能已经非常强大,但是也非常有限,对于搜索,客户常常会有一些特列要求。大家都知道有一个非常著名的模块-apachesolr_search ,drupal.org上用的就是这个模块,它可以逐步缩小你的搜索范围,非常强大,但是它要求你的主机装java环境,这对于用虚拟主机的用户来说,是一个噩梦,主机提供商不可能给你这个权限,还好acquia公司把它做成了一个服务,你只需要简单的配置,安装几个模块就可以实用这个功能了,但是每个月高达几十$的费用,让像我这样收入低微的程序员来说,很难支付得起。

自已不会写代码又不想花钱,怎么办?那么不妨用下面介绍的views方法实现(不过首先声明:这个方法不能用来做全文搜索,只能对某个字段以及过滤分类有用!!)

在views有个Filters选项。一看名字就知道是过滤的意思。一般的views用的都是些常用的,比如publish,content type等。

一般我们只是选yes 或者 no,这样的就会选出我们想要的内容了。我们的用法正在这里,现在,我们添加一个filters条件.如图:


本文永久地址:http://drupalsh.cn/node/162 , 转载请注明出处.