【问题标题】:Have trouble creating an hello-world module in drupal 5在 drupal 5 中创建 hello-world 模块时遇到问题
【发布时间】:2010-07-13 09:27:08
【问题描述】:

以下是我创建mudule的步骤:

  1. sites/all/modules下创建目录groups
  2. 在上述目录groups中,创建两个文件groups.modulegroups.info

groups.info的内容:

; $Id: groups.info,v 1.3 2006/11/21 20:55:36 dries Exp $
name = groups
description = Test Groups Listings.
package = "test groups"

version = "5.10"
project = "ed_groups"
datestamp = "1218672307"

groups.module的内容:

<?php
function groups_menu($may_cache)
{
    $items = array();
    $items[] = array(
        'path' => 'test_menu',
        'type' => MENU_CALLBACK,
        'callback' => 'groups_list',
        'title' => t('All Group Listing')
    );
}

function groups_list()
{
    return 'helloworld';
}

我在访问site.com/test_menu 时得到一个 oops(404) 页面

你能看出上面有什么问题吗?

【问题讨论】:

  • 另外,什么是错误?我猜 drupal 会告诉你一些事情(或者只是不显示模块)?
  • 我在访问site.com/test_menu时得到了一个糟糕的页面

标签: php drupal drupal-modules drupal-5


【解决方案1】:

看来您的问题是您没有在 hook_menu 中返回 $items。

应该是:

function groups_menu($may_cache) {
    $items = array();
    $items[] = array(
        'path' => 'test_menu',
        'type' => MENU_CALLBACK,
        'callback' => 'groups_list',
        'title' => t('All Group Listing')
    );
    return $items;
}

请记住在执行此操作后清除缓存,因为 Drupal 会缓存菜单系统。

【讨论】:

  • drupal 是否需要启用某种配置才能使新创建的模块生效?
  • 您需要先启用该模块,然后它才会执行任何操作。
猜你喜欢
  • 1970-01-01
  • 2015-11-04
  • 2023-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多