Tuesday, August 30, 2011

【专题】果果的drupal笔记

http://lilinguo.com/tag/drupal/

Drupal功能增强模块

2008-05-22, 15:19
Drupal 的功能增强模块太多了,并且每天都在不断增加,这里只列出其中一些主要的功能增强模块:

acidfree:一个功能完整的多媒体(例如图片、视频)管理系统。

adsense:显示 Google Adsense 广告。可以方便的定制显示方式,支持从 banner 到 link 等6种显示格式。此外还可以选则对特定用户群关闭广告显示。

album:影集模块。

amazon associate tools:Amazon 广告工具。

atom:提供 atom 种子

attachement:支持上传附件,可以用来替代 Drupal 自带的 upload 模块。不同节点的附件将分开放置,避免了文件重名的问题。

automember:自动用户权限管理。管理员可以设定不同的标准,自动分配给用户不同的权限。例如只开放有限权限给新注册用户,发表一定数目文章后将自动成为资深用户并得到高级权限

banner:自动轮换显示广告条。管理员可以方便的查看点击统计,并预设/开启/关闭/批准特定广告,用户则可以查看/修改/上载自己的广告条。

bbcode:提供 bbcode 输入格式的支持。

blog theme:允许用户选择自己 blog 的外观主题,当其它用户按作者浏览其 blog 时,看到的将是该 blog 作者自己选定的外观主题。

bookmarks:用户可以编辑自己的书签,并通过区块显示。

buddylist:用户可以编辑自己的好友名单,同时显示好友的 blog 区块。

captcha:图灵测试/字符校验模块,防止机器人自动注册

chatbox:聊天室模块。

codefilter:方便代码输入,能处理和。

contact directory:使用户可以添加自己的好友联络名单。

database administration:提供数据库管理功能。管理员可以通过此模块在 drupal 界面进行数据库查询、修改、删除等功能。

e-commerce:一整套电子商务工具。

event:跟踪事件并通知用户。

excerpt:摘要模块。Drupal 发布内容时只能用正文的开头作摘要,然后根据设定自动截取摘要。

ezmlm:用户将可以通过该模块订阅相关 Ezmlm 邮件列表。Ezmlm 是一个基于 qmail 的群发邮件订阅系统。

feedbak:反馈模块,可用于生成反馈表格收集用户意见或问题。

flexiblock:让 Drupal 能随心所欲的摆放区块。

flexinode:可以用此模块根据需要生成新的自定义节点(node)类型。在此基础上可以有很多灵活多变而非常实际的应用,可以说是 drupal 扩展模块里功能非常重要的一个。

front page:用于方便的定制站点首页,可以完全脱离站点外观主题的限制生成个性化的首页。可以显示不同的首页给不同权限的用户,并可插入 PHP 代码完成更强大的动态显示。

gallery:用于在线像册管理和展示。

guestbook:留言簿

hall of fame:名人堂模块。是对 drupal 自带的统计(statistic)模块的补充,可以统计站点共几篇文章,多少注册用户,建站时间,流行内容等,还可以显示发文最多用户,评论最多用户等。

htmlarea:一种所见即所得的输入方式。

image:像册。支持图片上传,并自动生成缩略图(thumbnail)。图片可以插入到页面中或组合成像册显示。

img_assist:和Image模块共同使用,通过图形界面窗口更便捷地在节点中插入图片。

internationalization:自动检测浏览器的编码设定,为匿名用户提供全方位的本地话翻译,包括节点内容界面的翻译。包括一个显示区块方便用户切换语种。

job search:招聘与求职模块

jsdomenu:生成多层弹出式菜单

mail:向特定用户群发送email

mailhandler:允许注册用户通过 email 创建、编辑内容或添加评论。

movie review:网上电影院

node vote:对文章进行投票

notification:自动发送邮件通知订阅者内容已更新。

organic groups:允许用户自行组成小组,每个小组将有自己的主页显示小组成员发布的内容。

pdfview:生成 PDF 文件

photo album:像册模块。

privatemsg:允许用户间发送私人信息。

project:项目管理模块。项目组成员可以由此跟踪项目的进展,可以通过 email 发送项目更新通知。

quote:用户在添加评论时可以方便的点选引用原文。引用部分用特殊格式显示以作区分。

quotes:可以用于收集显示名人名言。通过区块随机显示。

recipe:用于分享菜谱。

rsvp:可以发送 email 邀请用户参加特定的事件(event),并可跟踪用户是否查看或接受了邀请。

site map:显示站点导航图。

sitemenu:按文章分类显示站点导航。

smiley:使用表情符,自带了一些基本的表情符,用户可以自己添加。

SMS gateway:发短信

spam:防垃圾模块,防止你的 blog 成为一个实实在在的垃圾堆。

spam_surbl:对 spam 模块进行功能增强,使之支持 SURBL(Spam URI Realtime BlockList)。

sql search:此搜索模块不使用 drupal 自带的搜索索引,而是提供数据库搜寻功能,支持 SQL 和正则表示式,并提供高级搜寻过滤功能。

statistics_filter:过滤网站管理员和搜索引擎的访问统计信息。

stock:显示股票行情。用户可以自定制所显示的股票。

subscriptions:允许用户订阅任一节点内容,通过 email 通知该节点的更新以及是否有新的评论。

survey:可以创建调查问卷,调查结果可以下载为 excel 格式。

taxonomy menu:分类系统导航菜单,其格式将和 drupal 系统导航菜单一致。

theme editor:直接通过浏览编辑修改外观主题。

tinyMCE WYSIWYG Editor:一个非常好用的所见即所得文本编辑器,用于编辑输入文章内容。

trackback:开启 trackback 支持。

VIM Color:支持 VIM 代码高亮,支持PHP、Perl、C、HTML、JAVA 等多种语言。

voting:投票、评级

webform:创建网络表单节点类型,可以用于提交调查问卷、投票、注册等。

wiki:实现 wiki 功能。

workspace:我的工作空间模块,提供一个用户专有的工作区,可以集中察看管理自己的文章。




Drupal基本功能模块

aggregator:将 drupal 变成一个在线的 rss 订阅器。支持 RSS 和 RDF 格式。开启后可定时扫描新闻源自动更新内容(需要 crontab 支持)。

blog:这个模块让会员发表个人 blog,使 Drupal 变成一个多人 blog 系统。

blogapi:支持 XML-RPC blog 接口,允许用户通过第三方应用程序发表 blog。

book:允许多位会员一起合写一本书。

comment:开启 blog 或文章的评论回复功能,并且可以定制评论的权限以及每一篇文章是否允许评论。

contact:允许注册用户间通过填写联络表发 email 联系。

forum:论坛

help:在线帮助。很多标准模块和功能的帮助都可以在‘管理-帮助’里找到。

legacy:为升级版本提供向下兼容的接口。

locale:开启多语言支持,汉化 drupal 必须开启的模块。

menu:允许管理员定制,添加新的导航菜单。

path:支持 URL 别名,便于管理记忆。

ping:在发表新文章的时候通知其他网站。

poll:开启投票功能。

profile:开启此模块后,管理员将可以自定义用户注册时的表单项目和格式。

search:该模块支持站内搜索。能够很好的支持中文搜索,而且速度很快。

statistics:记录访问统计信息。

taxonomy:开启目录分类支持

throttle:站点节流控制机制。当站点流量过大网络阻塞时可以通过节流设定自动关闭相应模块功能以保证访问响应。

tracker:跟踪用户的最新发布。

upload:支持上传文件。

本站补充:

Content translation:允许将内容翻译为不同语言。(drupal 6.x 新功能)

Database logging:纪录系统事件到数据库中。

OpenID:允许用户使用 OpenID 登录。

PHP filter:允许开启 php 代码。

Update status:检查已安装模块和主题的可用更新




Drupal常用API函数列表

comment_num_all($nid):调用评论数,$nid为node的ID,当前node可用$node->nid。

taxonomy_get_tree($vid):显示分类(item),vid为category的ID,必须是category,不能是item,也就是说只能显示父层下面的item。

taxonomy_get_children($tid):显示Item下面的item,$tid为父item的id。

menu_get_menu():Return the menu data structure.不带参数,显示系统所有的menu。


menu_primary_links($start_level = 1, $pid = 0):pid可以指定起始层数,start_level貌似意思也差不多,还没实验过,有时间试试再说,下面是英文说明:
$start_level This optional parameter can be used to retrieve a context-sensitive array of links at $start_level levels deep into the Primary links menu. The default is to return the top-level links.

$pid The parent menu ID from which to search for children. Defaults to the menu_primary_menu setting.

menu_overview_tree:Present the menu tree, rendered along with links to edit menu items.

menu_get_item($mid, $path = NULL):Retrieves the menu item specified by $mid, or by $path if $mid is not given.

node_last_viewed:Retrieves the timestamp at which the current user last viewed the specified node.放在首页可以返回用户上次访问网站的时间。

referer_uri:Return the URI of the referring page.可以用来统计来源页面。

request_uri:Since $_SERVER[’REQUEST_URI’] is only available on Apache, we generate an equivalent using other environment variables.任何服务器系统下面都可以使用。

sess_count($timestamp = 0, $anonymous = true):Counts how many users have sessions. Can count either anonymous sessions, authenticated sessions, or both.貌似可以分别统计在线会员与游客数了。可以通过指定$timestam来实现15分钟内在线人数效果。

statistics_title_list($dbfield, $dbrows):
Description

Returns all time or today top or last viewed node(s).

Parameters

$dbfield one of

* ‘totalcount’: top viewed content of all time.
* ‘daycount’: top viewed content for today.
* ‘timestamp’: last viewed node.

$dbrows number of rows to be returned.

Return value

A query result containing n.nid, n.title, u.uid, u.name of the selected node(s) or FALSE if the query could not be executed correctly.

t($string, $args = 0):Translate strings to the current locale.

All human-readable text that will be displayed somewhere within a page should be run through the t() function.

taxonomy_get_parents($tid):Find all parents of a given term ID.

taxonomy_get_parents_all($tid):Find all ancestors of a given term ID.

taxonomy_get_related($tid):Find all term objects related to a given term ID.

taxonomy_get_term($tid):Return the term object matching a term ID.

taxonomy_get_vocabularies():Return an array of all vocabulary objects.

taxonomy_node_get_terms($nid):Find all terms associated with the given node, ordered by vocabulary and term weight.

taxonomy_node_get_terms_by_vocabulary($nid, $vid, $key = ‘tid’):Find all terms associated with the given node, within one vocabulary.

taxonomy_overview_terms($vid):Display a tree of all the terms in a vocabulary, with options to edit each one.

taxonomy_overview_vocabularies():List and manage vocabularies.

taxonomy_term_count_nodes($tid):Count the number of published nodes classified by a term.

theme_block($block):Return a themed block.

You can style your blocks by defining .block (all blocks), .block-module (all blocks of module module), and \#block-module-delta (specific block of module module with delta delta) in your theme’s CSS.

theme_box($title, $content, $region = ‘main’):Return a themed box.
Parameters
$title The subject of the box.
$content The content of the box.
$region The region in which the box is displayed.

theme_breadcrumb($breadcrumb):Return a themed breadcrumb trail.

theme_closure():Execute hook_footer() which is run at the end of the page right before the close of the body tag.用在之前用来结束页面,如果不加此函数,fckeditor不显示。

No comments: