关于Drupal的安装、使用、问题、修改等的讨论。也是目前唯一的Drupal中文交流论坛。
吾自寐言
Drupal
Drupal的cron任务
Submitted by kzeng on Sat, 2005-03-19 00:22以前一直没有仔细看Drupal的readme文件,只要安装完毕便是万事大吉。运行不出问题,也没有去考虑钻研一下文献,结果慢慢的发现有了一个问题:数据库的尺寸越来越大,天啊,今天到了不可想像的80M,打开phpmysql,发现accesslog这个table尺寸巨大,还有cache这个table,到管理->设置->统计数据中把保留log的时间调短,可惜还是于事无补,数据库的尺寸一点都没有减小,于是爬上drupal总站,大喊一声,Drupal怎么这么挫,顿时来了不少热心先生,仔细讨论一番,原来是我一直大意,没有设置cron任务。
Drupal的一些模块有定期运行的任务,而这个任务必须由cron来引发。这个大致是类似windows下的“计划任务”,定期自动运行一些程序,譬如你决定周五晚上8:00杀毒一样。所以为了使得一些程序可以定期的清理数据库,丢弃不需要的数据,你必须设置cron任务。最简单的激活cron任务的方法就是访问:http://你的安装目录/cron.php 这是一个手动的比较笨的办法,当然最好就是能够自动运行,不过这需要你的服务器支持SSH,并且你还要熟悉一些常用的命令行,你既然能耐心看我罗嗦到这里,肯定是不会用这些复杂的,这儿有一个简单的方式,就是使用poormanscron.module,它 的原理其实也很简单,有访客访问你的网站的时候,通过对你设定的cron时间进行判断,如果该运行cron了,就在访客浏览你的网页时利用他的浏览激发cron任务。所以,只要安装了这个模块就可以省却不少麻烦。不妨试试,我今天使用后,accesslog出了一点小小的问题,不过刚才用repair table修复了,现在已经好了。
Tips for Choosing Web Hosting
You need to find a home for your masterpiece. While technically you can run your own server and host your site yourself, this requires a lot of technical know-how, not to mention money and equipment. I don't recommend it.
Free vs Pay
So, one of the first decisions you need to make is whether or not you want to put your Website up on a free service, such as GeoCities, or whether you're willing to pay to have someone host your site. A third option is to take advantage of sites that host designer's portfolios for free, such as .
I recommend that you pay to have your site hosted. Free services tend to have annoying pop-up ads. Also, if something looks to good to be true, it normally is. Today's free service could begin charging you tomorrow.
Node Alias模块
/**
* @file
* Allows module to be nodealiasd giving it an alias.
*
*/
/**
* Implementation of hook_help().
*/
function nodealias_help($section) {
switch ($section) {
case 'admin/modules#description':
return t('Enables users to make a node alias');
case 'admin/help#nodealias':
return t("Need something here");
case 'node/add/nodealias':
return variable_get('nodealias_help', '');
case 'node/add#nodealias':
return t("A node aliasd node provides an alias to a node");
}
}
/**
* Implementation of hook_node_name().
*/
function nodealias_node_name($node) {
return t('node alias');
Drupal的两个新模块:pureftp模块和 node alias模块
Submitted by kzeng on Sun, 2005-03-13 00:21又有两个新鲜出炉的模块:pureftp模块和node alias模块。pureftp模块使用pureftp服务来管理ftp 用户,把Drupal和Pureftp整合在一起。Pureftp本身是一个开放代码的跨平台ftp服务器端软件,它的介绍在这里。
Node alias模块的用处更大一些,不过作者还没有申请到CVS帐户,不能直接提供模块下载,在本文的结束我会把它的源码贴出,欢迎大家测试。Node Alias模块(以下简称为NA模块)主要的功能有两项,都挺实用的。
Drupal允许把任何内容(包括blog, story, 静止页面)加入书籍(book)中,但是会导致两个小问题。第一,当你把一个blog页面(或是story,静止页面)通过“大纲”加入书籍中后,你的blog页面下端会出现类似书籍页面的“上一页”,“下一页”,“返回首页”等导航链接,影响了blog本身的美观,而NA模块就可以解决这个问题。当你把node alias用大纲加入书籍后,书籍的导航链接只在访客从书籍中浏览这个页面时才出现,如果访客以blog的形式浏览这个页面,则不会显示任何书籍导航链接,也就是是说链接通过对浏览的场景的判断的而显示或是隐藏。NA模块的第二个作用就是可以把一个页面加入不同的书籍中。呵呵,所以觉得这个模块其实挺使用的,特别是在把老的blog的内容整理称为书籍的时候:)
NA模块的源码如下:
Drupal + Gallery 2: 最新演示
Submitted by kzeng on Fri, 2005-03-11 01:42Drupal的Gallery 2 模块推出了好几个测试版,一直都没有试一下,不过今天浏览作者的网站时看到了一个不错的demo,可以和Drupal的image模块对比一下,呵呵,感觉效果不错,不知道最近推出的album模块是否可以与Gallery 2媲美。
另外发现,这款Gallery 2模块其实对于Video文件也可以生成缩率图,注意看名叫Video的子影集,其实它里面是一段Video。呵呵,这个或许也可以作为Drupal多媒体解决方案之一吧,和最新的media模块有些相似。
另外,就中文Drupal的新闻而言,Hiweed似乎彻底放弃了Drupal的汉化开发,以前以为它的Drupal部分只是暂时的无法访问,现在看来Hiweed似乎决定专注Linux了。Drupal马上就要推出4.6.0版本了,原来的4.5.0版本的汉化可能需要升级,正在考虑是不是向Drupal申请一个CVS帐户,接手Hiweed做汉化,或者有比较感兴趣的同好,大家可以一起来汉化新版本的的Drupal。
Drupal的两个新模块和麻烦丛生的Spread Firefox主题
Submitted by kzeng on Mon, 2005-03-07 18:57今天Drupal又推出了两个新的模块:Album和Ezmlm。 Album模块需要image和folksonomy模块的支持,估计是对image模块的改进,它用到了folksonomy模块,说明它应该像flickr一样支持图片标签(Tag)。既然称作Album,不知道会不会和Gallery比较相似,开发者没有给Demo。呵呵,整合Gallery的Drupal Gallery Module的开发一直都没有停止,可是并没有推出正式版,估计还在测试中。
Ezmlm模块应该是 easy mailing list management的缩写吧:P 它是一个管理邮件列表和订阅的工具,可以允许访问者订阅任何特定的页面和区块。
除了这两个模块,这阵子还有两件关于主题的“大事”。第一个是FriendsElectric主题的发布,这款主体还有一个衍生的Lite版本,是一个没有任何table完全用div定义的主题。另一个便是争论不断的Spread Firefox主题了。这本来是www.spreadfirefox.com使用的主题,该网站是由Drupal的衍生版本CivicSpace搭建的,不久前有人把它的主题port到Drupal,看上去蛮清爽的,但是block的显示问题却一直没有解决,不少Drupal使用者为此放弃了这款主体,还有不少在讨论改进,呵呵,可以根据这个主题改进一下我现在使用的主题:)
Drupal推出4.6 Release Candidate!
Submitted by kzeng on Sat, 2005-03-05 18:22Drupal的动作还是挺快的,不久前code freeze,开发新版本,现在居然有了一个样品了:)!呵呵,急不可耐的安装了一下,可以在这里看到这个新版本的模样。我还没有升级正在使用的这个Drupal,主要是因为很多的模块和主题还没有推出升级版本,并且这次升级还要改动数据库,比较复杂,等到一切都完备再说吧:P
从刚才的测试来看,管理中的不少设置都改变了,新添加了“Access Control”一项设置,用来确定访问权,原来这一项设置是附属于“用户帐号”设置的。另外论坛的设置也改变了很大,比原来的设置要简单方便很多,不用先设置关键字,再去设论坛,只要在论坛设置中直接添加就可以了。论坛的发帖也可以更改编辑了---这是原来Drupal被人诟病最多的一个问题。但是论坛本身比起PHPBB相差还是挺远的,没有添加譬如“引用回复”等选项,估计还是要靠模块来完成了。
区块(block)设置也有了较大的改观,现在可以更加方便的设置区块的显示,只需要简单选择就可以完成诸如“只在Blog中显示”,“只在Book中显示”等操作,很是方便。
搜索据说也彻底支持UTF-8编码,可以进行多语言搜索了,但是我测试了一下,还是有问题,准备写bug report。
还有其他很多比较细小或者是革命性的改动,请参看下面的更改日志:
------------------------
- search:
* added UTF-8 support to make it work with all languages.
* improved search indexing algorithm.
* improved search output.
* impose a throttle on indexing of large sites.
* added search block.
- syndication:
* made the ping module ping pingomatic.com which, in turn, will ping all the major ping services.
* added categories to RSS feeds.
* added enclosures to RSS feeds.
- flood control mechanism:
* added a mechanism to throttle certain operations.
- usability:
* refactored the block configuration pages.
* refactored the statistics pages.
* refactored the watchdog pages.
* refactored the throttle module configuration.
* refactored the access rules page.
* refactored the content administration page.
* introduced forum configuration pages.
* added a 'add child page' link to book pages.
- contact module:
* added a simple contact module that allows users to contact each other using e-mail.
- multi-site configuration:
* made it possible to run multiple sites from a single code base.
- added an image API: enables better image handling.
- block system:
* extended the block visibility settings.
- theme system:
* added new theme functions.
- database backend:
* the PEAR database backend is no longer supported.
- performance:
* improved performance of the forum topics block.
* improved performance of the tracker module.
* improved performance of the node pages.
- documentation:
* improved and extended PHPDoc/Doxygen comments.