刚刚升级完毕,一切都乱糟糟的:)
Drupal 4.7 提供了更灵活的block摆放设置,除了原来的左右边栏,还可以把block摆放在页首与页尾。新的block摆放设置有一个优点与一个缺点。优点是事实上它可以把block摆放在页面(page.tpl.php)上的任何位置;确定是摆放仅限于于页面(page.tpl.php)而无法灵活的放置在node.tpl.php上,举个例子,譬如你想在每篇blog的下面通过freetagging的关联添加一个"相关blog文章"的block,利用Drupal的新的block系统,你只能把这个block摆放在评论的下面而通常所希望的评论的上面,free tags的下面,有些不方便。这里我就分别介绍一下Drupal 4.7的block的这两个优缺点,以及改进办法(以放置related nodes 为例)。
Drupal 4.7的block在设置中,除了左右侧边栏外,新添加了页首,页脚和内容三个位置的摆放,使得block的放置更为灵活。其实,block的摆放并不仅限于这三个地方,通过设置方便的PHPTemplate主题,我们可以方便的把block放在任意的地方。首先,针对left, right, content, header, 和footer这5个位置,他们对应的变量分别是 $sidebar_left, $sidebar_right, $content, $header, 和 $footer_message。也就是说在page.tpl.php中,你只要想在显示他们的地方是用 <?php print $变量名称; ?> 就可以了。譬如,你可以把 $sidebar_left 放在右边而不是左边(使用两个边栏都在右侧的外观主题)。除此以外,你还可以方便的定义自己的区域。
呵呵,这一篇其实是一个篇外篇,本来不打算再写Zoundry的,因为以前写过;但是Drupal China有不少相关的讨论,所以写一下使用手记,使用Zoundry这么久也多了不少新的经验。以前在介绍过Performancing之后,曾经写过一个Zoundry和Performancing的简单的比较,Performancing的优势在于轻便;Zoundry的优势在于全面。这里主要说两个问题一是如何用Zoundry发布各个类型的Drupal的帖子(譬如Blog,Story,Page以及论坛主题);二是如何用Zoundry发布图片。
使用Zoundry发布帖子,必须先开启Drupal的blogapi模块,在开启这个模块之后,进入 管理->设置->blogapi,你就可以看到相关的选项,首先是选择使用哪种XML-RPC引擎,通常可以选用Movable Type;然后选择"Blog Type",如果只想用Zoundry发布blog,那么直接选"blog entry"就行了,如果还想用Zoundry发布别的内容,可以选择相应的类型,譬如论坛主题(Forum Topic)。在设置好Drupal的blogapi后,打开Zoundry,新建帐户,输入用户名密码,以及XML-RPC引擎的地址,通常是 http://www.yoursite.com/xmlrpc.php 就可以了,Zoundry会自动侦测可用的Node Type的。在我的测试网站,我就用Zoundry发布了一篇论坛里帖子。Zoundry可以很好的支持Drupal的分类系统,只需要在 Categories 栏里选择你要发布的论坛就可以了(呵呵,这就体现了Drupal论坛的好处,使用同样的分类词系统)。这也是Zoundry优于Performancing的地方,因为Performancing不支持blog以外的node type。
前天晚上把我的blog从 Drupal 4.6.5 升级到了 Drupal 4.7-beta6。总的过程还是很顺利的,升级的过程中也没有遇到"Illegal Mixing"的那个错误,看来 beta6 已经把它给修正了。因为自 Drupal 4.7 开始,数据库的编码都改为了UTF-8,但是升级程序只升级了核心的数据库文件的编码而并未升级一些模块使用的数据库文件(譬如:flexinode),所以这里就要用到 .install 文件了。
一般提供 4.7 版本的模块都应该在自己的文件夹里自带一个 .install 文件。这个文件有两个功能,一个是帮助安装新模块,一个是帮助升级旧模块(含数据库编码)。Drupal 原来的模块安装模式比较麻烦,如果模块必须相应的数据表支持,还必须再单独安装一遍数据表,自Drupal 4.7起,需要安装的数据表以函数的形式写入 .install 文件,直接和模块一起上传即可,在你第一次启动这个模块的时候,数据表会自动导入你的数据库,省去的单独导入数据表的麻烦。另外,再从旧的模块升级的时候,如果需要修改以有的数据表或是添加新的数据表也可以写入.install 文件,但是这个以我的经验是需要运行 update.php 来完成升级的(主要是更改数据库编码)。如果一个模块没有自带升级数据的编码文件,自己写一个也不是很难,可以参看这里。这里是我给Flexinode模块写的升级 .install 文件。
Drupal 就像一个块橡皮泥,可以做很多东西。目前经常可以看到的是把 Drupal 作为个人blog,但是drupal的用途远不止于此,所以想大致说说 drupal 的用途,以及作为 blog 的优势。
首先, drupal 可以作为一个内容管理工具,并且毫不逊色于老牌的CMS譬如Xoops,PHPNuke等,通过一个非常简单的界面,成员可以发布各种各样的内容,譬如 新闻、blog、投票、图片、论坛主题、以及下载等。并且这个系统的主题非常的灵活,可以随意的更改,以适合你的需要(参看这里)。同时Drupal还有方便的分类系统,支持很多 web 2.0 的特色譬如 tag,总体的以及各个分类的rss,trackback等等。另外 Drupal 还可以设定用户的角色,使得不同的用户拥有不同的访问权限,配合一些模块使用,可以很方便的作为以内容为主的商业网站,类似起点中文,或是幻剑书盟那样原创文学购买阅读网站,也可以通过e-commerce模块作为一个纯粹的网上购物网站,譬如GoodStorm。当然 drupal 也非常适合作一般的新闻网站,譬如 The Onion 就是用drupal搭建的。
Recent comments
1 day 6 hours ago
1 day 6 hours ago
1 day 10 hours ago
1 day 10 hours ago
1 day 22 hours ago
2 days 25 min ago
2 days 3 hours ago
2 days 3 hours ago
3 days 15 hours ago
4 days 20 hours ago