有一个简单的留言板,希望可以对留言进行回复,并且用户需要登录才能留言,另外,留言要通过审核才能显示在页面上。
在Drupal.org找了个Guestbook模组,可以解决前边的问题,但是却不带留言审核功能。
通常留言板都不会带审核吧,因为留言的人要是多了,管理员根本就木的时间去审核,而且客户,应该也不希望自己的留言要人家编辑过后才显示在留言的地方……
不过,留言审核可以在最大程度上让留言板对网站管理者有利……可以控制对自己有利的留言才显示在网站上……
最近做了个双语的站,遇到一个问题,就是建了一些区块之后,发现只有部分的block title可以翻译,之前错误和正确的设置如下:

应该将“All languages”改为“All languages (Translatable)”,这样就可以在“admin/build/translate/search”页里找到要搜索的词了。
首先,下载本文的附件,然后解压并放置在你的主题下。
打开你主题下的info文件,在区域列表中加入Superfish Menu区域。假如之前区域一个也没有的话,
那么你有必要将drupal 6主题下的默认区域都添加上,如下:
regions[header] = Header Blocks regions[content] = Main Content regions[left] = Sidebar Left regions[right] = Sidebar Right regions[footer] = Footer regions[superfish_menu] = Superfish Menu
然后在主题里的php.tpl.php中打印Superfish Menu区域,外面用一个id为 #superfish的div包着。
4.6 – 7
module_invoke()
请求一个module 的hook
$module 模块的名称
$hook 调用请求的hook 名称
...其他的传入hook里的参数
返回hook返回值。
调用local 模块里的block值:module_invoke('local','block','view','0');
其实就是调用local_block(‘参数3’,‘参数4’);这个函数而已
参数1:模块名称----local
参数2:hook 名称----block
参数3:相关的hook参数 ---- 这里是view
参数4:也是hook参数---- 这里是 0
很多人可能会遇到将现有网站迁移至drupal的问题,下面的内容主要介绍如何将已有的数据迁移至drupal。
批量导入数据到drupal的方法其实也有很多,例如csv格式文件的导入,通过别的站点抓取到得信息,整合别的系统时,相互数据的迁移都要用到这些内容。我们建立一个简单的模型,只考虑节点基本数据,不考虑其他因素(比如节点图片,节点术语分类等等),将模型简单化 有助于我们解决问题。
以拿抓取页面为例,我们使用正则表达式过滤出需要的信息后,将其存放在一个一维关联数组中,其中键对应数据库中的节点字段,比如 title,body,name等。然后我们手动调用node_submit方法,将一维数组传进去,这个方法会对我们的数组做一些存表之前的工作,我 们直接可以在api.drupal.org查看这个方法的代码。
通常建议最佳的方法是在theme 下的.info文件里加入类似:
scripts[] = js/custom.js
stylesheets[all][] = css/custom.css
你可以加第三方的 js/css, 例如 jquery ui, fancybox 之类。
如果你看到你的page.tpl.php 有<script type="text/javascript" src=""></script>你可能会考虑用以上的方法include了。
Note1: 路径是相对到theme 的文件夹。
Node2: 它们会被优化的, 如果你开启了压缩 js/css 文件(在“管理”-“站点设置”-“性能”下的“带宽优化”中)的话。
输出 RSS Feed (供稿种子)已经成为许多网站的标准功能,drupal 作为世界上最受欢迎的站点框架“内容管理系统”(CMS)之一,当然也有输出 RSS Feed 的功能。但是 drupal 自带的输出 RSS 功能不太完善,很不方便自定义。如果想自己制作 Feed,比如为某个分类的文章单独发布 RSS,或是为评论生成 Feed,要怎么做呢?我搜了一下,在网上居然没有找到完整介绍的文章,所以我就自己来写一篇如何为 drupal 站点烧制 RSS Feed 的简单教程吧。
一、容易误解的地方
如果要对基于 Drupal 建立的网站进行 SEO (Search Engine Optimization——搜索引擎自然结果优化),那么就一定要尽量避免网站内的重复页面。因为当搜索引擎的爬虫抓取到大量的重复页面时,搜索引擎就会降低对网站页面的打分,当然这种影响可能并不太容易被察觉。
当我们使用 Drupal 时通常会碰到这样的问题,例如:页面 http://www.drupalgarden.cn/node/34 和页面 http://drupalgarden.cn/node/34显示的是相同的内容。或许您会认为这是大惊小怪,但事实上这是两个独立的页面,它们的内容重复,这一点对 SEO 不利。好在 Drupal 开发者早已为我们考虑到了这点,只要做个略施小计就能唤醒这个功能:)
注意:本文只针对拥有一级域名的网站,二级域名的网站不存在这个问题。
Drupal 默认的 .htaccess 为我们提供了两种解决方案:
drupal默认用户注册表单中只有用户名称,帐号密码,邮箱等字段,如果想对用户做一些好的交互,必须要用到用户一些稍微详细的信息,而drupal的hook_user可以很方便的让我们添加这些信息,比如我的站点要给用户加入性别、详细地址和个人简介,我们可以实现user钩子如下(我的模块叫snippet):
注:本人对于字符串都没有加t函数做翻译,是为了提高速度,需要的用户可以适当修改。