跳转到主要内容
东方龙马 提交于 19 July 2012

Base theme(基主题):Drupal允许主题间设立一点关系。创建一个子主题,它可以继承基主题(详见下一章)的功能和优点。创建子主题时,需要指定基主题。在这里用的基主题的机器名很重要。

base theme = themename(主题名称)

Description(描述):是指主题的基本功能或用途需要在此说明。描述将被显示在“admin/appearance”页面,描述也可以包含HTML。

description = The description of my theme(我的主题描述)

Engnine(引擎):指定主题引擎。PHPTemplate是默认和最常用的,所以除非你想改变它,没有必要去手动设置。其他选项包括一个纯PHP主题的醒目和主题(比如,到http://drupal.org/project/chameleon看一下Chameleon主题)。

engine = phptemplate

Features(功能):设置功能是覆写Drupal全局主题设置的一种方法。下面是Drupal默认主题设置的一个列表。这些设置可以在每个主题设置页面的主题界面上进行开关的切换。甚至指定禁用Drupal默认的而使用你的。

东方龙马 提交于 19 July 2012

Core:Drupal将仅当你的核心设置为支持当前的Drupal主版本时,才允许你的主题可以被开启。主版本仅仅是6.x,7.x或者8.x等。

core = 7.x

Name:人类识别的主题名字。它不需要与机器识别的名字一致或者相似,这里可以自由创建。

东方龙马 提交于 19 July 2012

.info文件(读作“点info文件”)包含关于你的主题的元数据,例如,主题的名字,Drupal支持的哪个版本,以及一些如样式表和主题将包括的区域等。书写info文件通常是是创建一个主题的第一步。

文件的第一部分名字通常是机器识别的主题的名称,它是Drupal用来存储关于你的主题到数据库的信息。破折号和其它特殊字符是不允许的。虽然下划线是被允许的,但是通常认为最佳的做法是避免使用它们命名你的info文件。使用themename.info而不是theme_name.info。当进行主题函数覆写时,这个名字也用于函数名字的前缀。当覆写theme_menu_link()函数时,比如,当试图确定覆写正在被执行时,函数名themename_menu_link()通常比theme_name_menu_link()更容易阅读。

注意:你的主题(机器)名字必须唯一的。不要让你的名字与已有的模块重名,因为这样有可能会导致命名空间问题和增加追踪下载PHP错误的难度。

每个主题依赖主题的info文件中的一些基本属性。名字、核心和引擎属性都是Drupal主题最起码的要求。下面章节将包含每个可选属性的概述,并且带有语法说明。

天空蔚蓝 提交于 18 July 2012

模块文件夹下的两个文件

最简单的模块可以仅由放于同一目录的两个文件组成:一个用于提供模块信息,另一个包含代码(该模块可以做什么的指令)。模块信息文件的文件名由模块名加上“.info”后缀构成,代码文件的文件名则是以模块名加上“.module”后缀。可以给模块起任何易读的名字,但一开始需要确定的是模块的机器名:机器名只能使用小写的字母和数字,不能有空格和特殊字符。你可以将这个名称字用于模块文件夹、模块文件名以及代码中的函数名。所以就这个例子而言,X-ray模块的机器名是“xray”,模块文件夹的名称为“xray”,其中的两个文件分别为xray.info和xray.module。这两个文件分别定义于清单18-1和清单18-2,稍后我们将详细介绍这些内容。

清单 18-1 xray.info文件

天空蔚蓝 提交于 18 July 2012

在本节中,你将先快速浏览一个小模块,然后我们将再回来详细分析。在第19章的最后,我们将完成这个模块的功能,这个模块将帮助站点的架设者和模块的开发人员侦察站点。这个模块的用意,是让他们看到站点的骨架,所以这个模块被命名为X-ray(X光透视模块)。这个模块将取得站点中表单的ID,并将ID显示在表单上方。

天空蔚蓝 提交于 18 July 2012

作者:Benjamin Melançon

到现在为止,我们知道Drupal是一个功能强大的模块化系统。事实上,Drupal的强大正是源于它的模块,基于Drupal与模块之间的交互来实现一些很棒的事情。

那如何向你原有的功能中也注入这股强大的动力呢?你可以编写一个模块。你需要做的就是创建2个文件。一个文件向Drupal提供模块信息;它不是代码文件。第二个文件最少可以只包含3行代码。在本章的第一节,你将会创建这2个文件,从而创建一个可用的模块。制作模块是任何人都可以做的事情。在开发中需要遵守很多规则(大多很简单),使用很多工具,以及进行很多探索。对每个人来说,开发一个Drupal模块的过程,同时也是学习的过程。

本章是模块开发的概述,第19章和第20章将着手进行开发。这章包含以下内容:

  • 介绍模块的基础知识以及如何通过使用钩子系统来完成几乎所有的工作,包括扩展模块甚至是更改Drupal。
  • 大致介绍开发一个模块所用到的技术,包括基本的PHP以及Drupal的编码规范。
在Drupal.org 上发布过模块的中国 Drupaller 及其模块

今天在drupal groups上看到袁列了一些drupal中文社区一些drupaller在drupal官方发布过模块的一些牛人,我也简要列一些,让大家多熟悉一下。

以下是在Drupal.org上发布过模块的中国Drupaller及其模块的简要统计,没有列举的可以补充!

East(东哥)http://drupal.org/user/134014

东方龙马 提交于 17 July 2012

Drupal会到它的主题目录去扫描可用的主题,因此将你的主题放在正确的目录下,这样Drupal才能识别它。你也有可能将新增的主题放置到Drupal的“/themes”目录下,但从技术上来讲,这被认为是“破坏核心”,并且应当避免。在下载和解压你的主题之后,选择以下哪个目录来放置主题。使用其中任何一个目录都可以帮你确保Drupal自身的任何升级不会覆盖你的主题。

  • sites/all/themes:当你想为你的Drupal中的所有站点安装使用这个目录的主题时。
  • sites/sitename/themes:提供给你的Drupal多站点安装在特定的网站上时。

您也可以使用主题安装程序,点击“外观”页的顶部安装新的主题链接,下载并安装来自贡献的主题。这将使你在这里您可以进入链接到项目下载的压缩包的位置,并单击“安装”。主题安装程序会自动下载你的主题,并放置在“sites/all/themes”目录。一旦完成,您可以像往常一样在“admin/admin/appearance”页上来启用主题。

可再生能源网 提交于 16 July 2012

现在用的任然是drupal 6. 公司的网站开通有中文的,每次有翻译从英文网站翻译后先保存在英文网站上,再通过translation jobs 里打开文章,导出,然后贴code的方式放到中文网站上去

 

问题出现在taxonomy term id 。我查过。由于当时没留意,建站的时候搞得两个站的分类里相同的分类名词id不同,有些英文分类里id号比如  term/93  是中文里没有的,又比如中文分类名:健康安全term=66 而英文网站里同个名词term=33。所以贴code inport 进来 分类就乱套了。可是我发现term id很难改。哪位高手能介绍一下怎么改term id么。是只能打开mysql 改table, 那么多关联的,不敢随便改啊。

订阅