理解Drupal模块之Book

在选择模块之前,要先弄清楚自己需要一个什么样的功能,然后再去找有没有合适的模块来实现自己所要功能。

那么我想要一个什么样的功能呢?

我需要在网站上转载一些别人的连载文章,一个系列的连载作为一篇完整的文章,系列连载的每个部分就如同书中的章节一样,有着上下文的关系。这样,从我的需求来看,一个制作书籍内容的模块就比较适合我。

需求确定了,开始找可以满足需求的模块。^_^ 可喜的是 Drupal 本身就内置了一个Book模块,在中文版里翻译为“手册”。

Book 模块使用还是比较简单的,像添加一条Story一样添加好标题和内容后,然后需要额外操作就是编辑“手册纲要”( 中文版的翻译)。在“手册纲要”部分有两个选项,一个是手册,另一个是权重。

“手册”,可以把它理解成为一本书的书名,如果书名不存在则选择“创建一个新的手册”,否则选择一个已经存在的书名。当选择创建一个新手册的时候,当前文章的标题就会成为这个手册的名称,也就是书名。

权重,就是在同级别的书本中,权重越大,那么在排序的时候就会排的越靠前。

到此,剩下的工作就是添加文章了,体力活o(∩_∩)o…哈哈!~ 大家如果想看我的劳动成果请到这里www.51XNA.com

EOF


近距离Drupal概览

面对国内用户,中文是必须的,因此需要安装中文语言包,目前6.x版本的中文语言包做的不错,下载后直接解压到drupal文件根目录即可。我是在使用drupal安装脚本配置之前就将中文语言包放到drupal所在的文件目录的,这样开始使用drupal安装脚本配置的时候会提示配置中文的。

Drupal 支持主题(Theme)和模块插件(Module),如此一来给网站换马甲和增加武器装备就变得容易。

如果你浏览了Drupal的主题和模块下载页面,你一定会惊讶主题和模块的种类是如此的多。挑一个喜欢的,实用的下载后分别解压到 drupal/sites/all/{theme,modules}目录下,如果这两个目录没有先创建。把主题和模块放在这里是推荐设置,顾名思义,这是对所有site生效的设置(Drupal支持同一程序下多个站点)。当然如果非要放到Drupal核心模块和主题那里也是可以的,只是不推荐而已。

在确定网站需要的功能后先到module下载页找找,实在没有的话就自己写,如果自己写的还有其他人需要的,再反馈给drupal社区,良性循环!

这是我对Drupal的第一次仔细观察的印象,之前也安装了几次,一直就没仔细瞧过,惭愧。

参考:

EOF


Drupal

Drupal是一个出色的开源CMS系统,Whithouse也在使用。
现在把我今天配置Drupal的时候遇到一些问题以及解决办法记录在此,备查。

软件版本信息
Windows7
IIS7 + FastCGI
php-5.3.1-nts-Win32-VC9-x86
drupal-6.14

在PHP官方文档中提供了IIS7如何使用FastCGI配置PHP,需要注意的是当启用php.ini-development作为php.ini配置环境时,在CGI部分默认的是无法工作的,需要做如下修改

cgi.force_redirect = 1
cgi.nph = 0
cgi.fix_pathinfo = 1
fastcgi.impersonate = 0
fastcgi.logging = 1
cgi.rfc2616_headers = 0

在php.ini文件中需要启用的 extension

extension=php_gd2.dll    ;用来画图
extension=php_mbstring.dll   ;多语言支持
extension=php_mysql.dll    ;连接MySQL
extension=php_pdo_mysql.dll    ;使用PDO的方式连接MySQL,非Drupal必须
extension=php_sqlite3.dll    ;连接sqlite3,非Drupal必须
extension=php_xmlrpc.dll    ;xmlprc实现接口,非Drupal必须

使用PHP5.3会有遇到 Function ereg() is deprecated Error 在询问了万能的Google后并参考这篇文章Function ereg() is deprecated Error 错误对策,使用文章中提到的最后一种办法来解决这个问题:
在 drupal\includes\file.inc 第 902 行

//elseif ($depth >= $min_depth && ereg($mask, $file)) {
elseif ($depth >= $min_depth && preg_match('/'.$mask.'/', $file)) {

默认的php.ini-development还会遇到一个时区(date.timezone)的问题需要修改php.ini

[Date]
date.timezone = "Asia/Shanghai"

另外还遇到一个Drupal设置的问题,default.settings.php 文件是不能删除的,至少在安装过程中需要,因为配置程序会读这个文件。

以上就是今天安装Drupal的一些总结,接下来再仔细研究如何在Drupal上做二次的开发。我就不信开源的程序搞不出符合国情的站点。

EOF


在linux上使用swap文件

作为个人用户,为swap分一个磁盘分区有些浪费,其实我们可以使用swap file来替代swap 分区,而且还可以很方便的调整swap file文件的大小。

To add a swap file:

1. Determine the size of the new swap file and multiple by 1024 to determine the block size. For example, the block size of a 64 MB swap file is 65536.

2. At a shell prompt as root, type the following command with count being equal to the desired block size:

      dd if=/dev/zero of=/swapfile bs=1024 count=65536

3. Setup the swap file with the command:

      mkswap /swapfile

4. To enable the swap file immediately but not automatically at boot time:

      swapon /swapfile

5. To enable it at boot time, edit /etc/fstab to include:

      /swapfile               swap                    swap    defaults        0 0

The next time the system boots, it will enable the new swap file.

6. After adding the new swap file and enabling it, make sure it is enabled by viewing the output of the command cat /proc/swaps or free.

参考:
RHL-8.0-Manual

EOF


云存储

过上云生活

如今的生活已经很难离开电脑了,上班在用电脑,下了班到家还是在用电脑,有些人的家里有不止一台电脑。如果有一些方便的工具把自己的一些不那么私密,又经常用到的资料,文件等在这些电脑中同步多好。

这里我有两个云存储要推荐给大家,其实我已经用上了。

一个是 Dropbox
选择Dropbox的原因是他已经可以跨平台,尤其是在Linux上表现不俗。而不像半死不活的liveMash那样只为Windows和Mac提供服务。新注册用户有2G的空间,完成指定的操作后,会给你加上250M,如果你还能邀请到其他人使用Dropbox的话,你的空间就可以升级到3G。如果只是放一些文字资料的话,这个容量还是够用的。

原来还比较担心Dropbox会遇到GFW的挑战,当看到Dropbox是基于Amazon S3的时候,稍微宽心了一点。

All files synced by Dropbox are encrypted and stored securely on Amazon’s Simple Storage Service (S3) over several data centers.

另一个是 SkyDrive
难得M$很慷慨的为我们提供了25G的存储空间,可M$到底是M$,在提供这么大空间后小家子气就犯了,不再提供其他的附加工具,你只能在Web上进行文件管理操作(IE当然首选)。不过可以借助第三方软件,把这个25G的网络存储空间当作本地硬盘来使用。如SkyDriveExplorerWindows Only!

这两个工具其实配合起来使用是佳选择,据我的体验来看,Dropbox的文件传输速度相对较快,适合放一些经常要用的资料。SkyDrive作为补充,放一些比较大,使用不是很频繁的资料,或者软件、AV什么的。

工具我给推荐完了,至于怎样用,发挥你的想象力吧!

最后,如果你看完这篇文章还是不知道什么是云存储,去问Google,什么是云存储

EOF


只言片语

智慧是由内而外的。

如果你说不好,写不好,那是你肚子里没货。

写作,有话要说的时候就写出来了。如果你是为了其他的目的而写作,只能是将垃圾塞进纸里。

不能直言他人的缺点,尤其是平庸之辈,因为你伤了他的自尊心,他会像疯狗一样咬你,如果是有智慧的却会因此而感激你。

学习是学出来的,不是教的。当然有一个好的教导者则会让你学的更好。

这个世界是彩色的,不是非对即错的。

童话、小说都是虚假的,在没有认清真实的世界之前,不要去接触它们。

难道我们就不能为梦想而做点什么吗?