我是drupal的新手,目前正在学习drupal 7。
我指的是drupal 7的书
我正在尝试创建我的第一个自定义模块
在本书中提到您可以在以下目录之一中创建模块1)/ sites / all / modules
2)/ sites / default / modules
我的模块名称是第一个
我在/ sites / default / modules / first
中创建了我的模块在这个目录中有两个文件
1)的 first.info
2)的 first.module
第一个.info文件的内容是
;$Id$
name = First
description = A first module.
package = Drupal 7 Development
core = 7.x
files[] = first.module
;dependencies[] = autoload
;php = 5.4
fisrt.module文件的内容是
<?php
// $Id$
/**
* @file
* A module exemplifying Drupal coding practices and APIs.
*
* This module provides a block that lists all of the
* installed modules. It illustrates coding standards,
* practices, and API use for Drupal 7.
*/
/**
* Implements hook_help().
*/
function first_help($path, $arg) {
if ($path == 'admin/help#first') {
return t('A demonstration module.');
}
}
?>
当我尝试检查模块列表时,我无法看到我创建的模块
我已经累了清除缓存并检查仍然没有显示
谁能告诉我哪里错了。提前致谢
答案 0 :(得分:3)
模块位置
大多数人选择将模块放在/sites/all/modules
或/sites/domain.com/modules
文件夹中(不是sites/default...
)。对于大多数常见的Drupal安装,您应将其放在sites/all/modules
。
信息文件
您的信息文件中只需要名称,描述和核心。首先删除除这些值之外的所有内容。
name = First
description = A first module.
core = 7.x
有关详细信息,请参阅Writing module .info files (Drupal 7.x)。
一些注意事项:
.module
文件。答案 1 :(得分:1)
我通过使用
启动.info文件解决了这个问题name = First
并使我的文件编码:
没有BOM的UTF-8
使用Notpade ++时可以轻松找到它
答案 2 :(得分:0)
function test_example_help($path, $arg){
switch ($path) {
case "admin/help#test_example":
return '<p>' . t("test module to see how it works and shows") . '</p>';
break;
}
使用switch语句尝试以下示例以查看它是否有效
答案 3 :(得分:0)
尝试取出标记php代码结尾的?&gt; 。这样做是为了防止空格分解HTTP标头。