Drupal 当我创建自定义块模块时,它会显示在模块列表中,并被激活。但不显示在块列表中

Drupal 当我创建自定义块模块时,它会显示在模块列表中,并被激活。但不显示在块列表中,drupal,drupal-7,Drupal,Drupal 7,文件夹名称:yourModule 在那个文件夹里我有两个文件,一个是“yourModule.info”,另一个是“yourModule.module” yourModule.info代码: ;$ID$ name = "Your Module" description = "Place to put PHP functions for Drupal customizations." core = 7.x yourModule.module代码: /***********************

文件夹名称:yourModule
在那个文件夹里我有两个文件,一个是“yourModule.info”,另一个是“yourModule.module”

yourModule.info代码:

;$ID$
name = "Your Module"
description = "Place to put PHP functions for Drupal customizations."
core = 7.x
yourModule.module代码:

/*****************************************************************************
* Implementation of hook_block()
* @see http://api.drupal.org/api/function/hook_block/6
* create a minimal block
*/
function yourModule_block( $op = 'list', $delta = 0, $edit = array()) {
  switch ($op) {
  case 'list':
       // appears on the Blocks configuration page admin/build/block<br>
       $blocks = array();
       $blocks[0]['info'] = t('My Block');
       return $blocks;
  case 'view':
       // content of block; required to have 'subject' and 'content' elements
       $blocks = array();
       $blocks['subject'] = t('<center>My Block Status</center>');
       $blocks['content'] = t('<center>My Block Content</center>');
       return $blocks;
  }
}
/*****************************************************************************
*hook_block()的实现
*@见http://api.drupal.org/api/function/hook_block/6
*创建一个最小的块
*/
函数yourModule_块($op='list',$delta=0,$edit=array()){
交换机($op){
个案"名单":
//出现在块配置页面admin/build/block上
$blocks=array(); $blocks[0]['info']=t('My Block'); 返回$blocks; 案例“视图”: //块的内容;需要有“主题”和“内容”元素 $blocks=array(); $blocks['subject']=t('My Block Status'); $blocks['content']=t('My Block content'); 返回$blocks; } }

我在谷歌上搜索了3天,但没有用。我在windows xp上使用drupal 7和wamp…请保存我。

您已经将问题标记为drupal 7,实际上您模块的信息文件声明了
core=7.x
,但您使用的是drupal 6的块挂钩

对于Drupal7,您需要分别使用和

function yourModule_block_info() {
  $blocks['my_block'] = array(
    'info' => t('My Block'), 
    'cache' => DRUPAL_NO_CACHE,
  );

  return $blocks;
}

function yourModule_block_view($delta = '') {
  $block = array();

  if ($delta == 'my_block') {
    $block['subject'] = t('My Block Status');
    $block['content'] = t('My Block Content');
  }

  return $block;
}
drupal 7中不存在hook_block()。查看更多信息