三月 2009

通过.htaccess改变upload_max_filesize的大小

php.ini中默认的是upload_max_filesize=2M,如果你想上传更大一点的文件,就要改变它的值了。如果你用的是独站主机,可以直接修改php.ini,如果你是共享主机,可以通过改变.htaccess来实现

在.htaccess最后添加以下代码:

php_value upload_max_filesize 1000M
php_value max_execution_time 10000
php_value post_max_size 1000M
php_value max_input_time 50000


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

编写一个使用jQuery的Drupal模块

创建一个jQuery的投票小部件 译者:葛红儒 Eskalate科技公司

让我们编写一个基于jQuery的Drupal模块。我们将建立一个如图17-2所示的Ajax的投票小组件,它可以让用户为喜欢的文章添加一分。我们使用jQuery来处理投票和总分的改变,而不用重新加载整个页面。我们还添加一个基于角色的授权,这样只有具有“rate 内容”授权的用户才允许投票。由于每个用户的每次投票只能增加一份,让我们将模块的名称命名为“plus1”。

图17-2 投票组件

在我们接触到plus1的jQuery部分以前,首先我们需要构建模块所需的基本一些代码。如果你以前从来没有创建过模块,请参看第2章。如果有经验的话,现在就开始了。

在 sites/all/modules/custom下面创建一个名为plus1的目录(你可能需要创建这个目录如果它不存在的话)。在目录plus1下面,创建文件plus1.info,它包含下面的代码:

name = Plus 1

description = "A +1 voting widget for nodes. "

version = "$Name$"

该文件将模块注册到Drupal中,这样可以通过管理页面启用或者禁用它。


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

如何对表单元素进行单独验证

需要对一个表单元素单独的进行验证而不是对整个表单进行验证,要如何做呢?以前在drupal专业开发指南中看到过类似的操作,方法如下:

一般情况下,一个表单使用一个验证函数,但是也可以像为整个表单设置验证函数一样,为单个表单元素设置一个验证函数。为了实现这一点,我们需要为元素的属性#validate设置为一个数组,其中验证函数的名称作为键,任何你要传递的参数作为值。表单数据结构中该元素分支的一份完全拷贝,将被作为验证函数的第一个参数。下面是一个专门用来说明这一点的示例,在这里我们强制用户只能向文本输入框中输入香料(spicy)和糖果(sweet):

<?php
$allowed_flavors
= array(t('spicy'), t('sweet'));

$form['flavor'] = array(

'#type' => 'textfield',

'#title' => 'flavor',

'#validate' => array('formexample_flavor_validate' => array($allowed_flavors))

);
?>

那么你的表单元素验证函数应该如下所示:
<?php


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

50个非常有用的PHP工具

 PHP是使用最为广泛的开源服务器端脚本语言之一,当然PHP不是速度最快的,但它却是最常用的脚本语言。这里有50个有益的PHP工具,可以大大提高你的编程工作:


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

2009年搜索引擎优化(SEO)趋势

作者对2009年搜索引擎优化(SEO)的12个趋势进行了分析,对于网站建设与SEOer有帮助。

搜索引擎优化(SEO)的变化速度令人目眩。当然,每隔一段时间就会出现一些为人熟知的标志性改变,例如2007年5月份google推出的全能搜索(universal search)。然而Google表示去年对排名算法做出了多达400项改变。谁与赶得上这变化呢?幸而你无须紧跟每一个细微变化。但是随着我们迈入2009年,你多少得了解一些SEO的变化趋势。接下来我将主题分为两大部分——战略战术和产业全局趋势——向你介绍。

产业全局趋势
1.对SEO认识提高

SEO曾被当作巫术一般,仅有从事的人才能理解。然而现在人们几乎耳熟能详(甚至沃尔玛都有SEO服务)。随着更多小企业主了解SEO以及研究SEO的意义,竞争将会加剧,有必要对正确决策做出奖励——到底是自己做SEO呢,还是雇用顾问。

2.SEO走入企业内部

企业内部搜索引擎优化从未这般风行,这股潮流将会延续至2009年。即将召开的SMX West大会将会用一整天时间讨论内部SEO。大小公司都已意识到,设立员工专注于SEO的献计献策并付诸实施是有需要、有价值的。

3.SEO顾问及SEO公司被大量预订


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

如何使用 SMS Framework 发送短信

SMS Framework 的核心部分是一个很基本的框架,它定义了一系列函数或说接口,可以让其他开发者方便地创建前台界面或是后台短信接口(Gateway),同时也提供了一些利用这个框架创建的实用插件。比如 sms_user 可以让每个用户关联一个号码,sms_clickatell 是一个 Gateway,等等(具体参考文末附录)。这些插件还并不完善,所以到目前为止,SMS Framework 还只是一个开发工具。而本文想说的就是利用它开发可以在中国发送短信的Drupal插件。

首先要介绍的是如何在网络上向手机发送短信。简单说,这是通过网站的服务器,根据特定的协议,向短信提供商(中国移动等或二级经销商)发送网络请求来实现的。而协议由提供商决定,它可能是特别定制的(比如中国移动),也可能是REST(常见为HTTP GET),也可能是SOAP等等。这也就产生了一个选择提供商的问题。一般来讲,顶级提供商更适合比较有实力的公司选用,因为它们不仅申请门槛较高,而且由于协议是特制的,开发成本也比较高;而相对的,二级经销商较适合快速申请,快速开发,但功能和灵活性上就会有不同程度的限制了。


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

hook_theme的应用

drupal的默认模板引擎在themes\engines\phptemplate目录下,在5.x版本中,这个目录下还有很多个文件,用来定义节点、页面等样式,如node.tpl.php、page.tpl.php,但在6.x版本中,这个目录下只有一个文件,而且内容都是帮助说明,那么以前的tpl.php上哪儿去了呢?在哪儿定义的它们?

drupal 6.x的theme机制做了较大变化,核心就是hook_theme,和hook_nodeapi等钩子一样,其它模块都可以调用它,定义自己的tpl.php。在输出时,系统调用tpl.php文件的顺序是先主题、后模块、最后是核心。比如节点的浏览页,是由node.module模块定义的,系统会先在主题文件夹里寻找node.tpl.php,如果没有,就在node.module中寻找。那么,这个node.tpl.php是如何添加进系统中,如何进行传值的呢?下面以movie模块为例来说明hook_theme在模块中的应用。


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

drupal的几款编辑器比较

1.FCKeditor (下载地址:http://drupal.org/project/fckeditor) 描述:所见即所得,支持图片和Flash,工具栏可自由配置,非常强大,完全满足你所有的编辑需要。FCK官方网站:http://www.fckeditor.net/,它可整合进几乎所有的编程语言中.drupal的模块中,把fckeditor很好的整合了进来,安装好该模块后,需要到admin/settings/fckeditor里面做一些配制,如果你不想让某个textarea出现fck编辑器,可以把它的id写进Visibility settings的exclude里面。可自由定制。
 


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

Userpoints (用户积分)

模块说明
用户可以通过发表内容,评论,投票等获得积分 地址:http://drupal.org/project/Userpoints
用户权限

  • admin userpoints (管理积分)
  • view userpoints (查看用户积分)

模块设置
1、Transaction status (交易状态、获得方式)
2、Points branding (积分名称)
2.1、Word to use in the interface for the upper case plural word Points (大写积分复数的名称)
2.2、Word to use in the interface for the lower case plural word points (小写积分复数的名称)


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