1

こんにちは私はdrupal開発者ではなく、いくつかのデータを表示するためにdrupalでモジュールを作成する必要があります。いくつかのチュートリアルを読んだ後、何も表示できないようです。

次のコードがあります:

<?php
function helloworld_perm() {
  return array('access helloworld content');
} 

function helloworld_listado(){
 return "yea";
}

function helloworld_menu(){
    $items = array();
    $items["listado"] = array(
        'title' => t('Listado de empresas'),
        'callback' => 'helloworld_listado',
        'access' => array('access helloworld content'),
        'type' => MENU_NORMAL_ITEM 
      );
    return $items;
}

/ listadoと入力すると、アクセスが拒否されます。このページへのアクセスは許可されていません。

何が間違っているのか分かりますか?admin-> module-> permitsに移動すると、hellowoldコンテンツにアクセスするためのすべてのロールの権限を確認しました。

Ty!

4

4 に答える 4

6

メニュー配列が で構造化されている方法から、helloworld_menu()これは Drupal 6 であると想定しています。そうであれば、'access' を 'access arguments' に名前変更する必要があります。http://api.drupal.org/api/function/hook_menu/6を参照してください。

Drupal API ドキュメントには、基本的にここで行っていることを行っている、コメントの多い page_example.module も含まれています。 .module/6/ソース

それが役立つことを願っています!

おー。その後、管理 >> サイト構成 >> パフォーマンス の [キャッシュをクリア] ボタンからキャッシュをクリアすることを忘れないでください。

于 2009-01-24T20:47:49.347 に答える
1
 => t('Listado de empresas'),
    'page callback'    => 'helloworld_listado',
    'access arguments' => array('access helloworld content'),
    'type'             => MENU_NORMAL_ITEM,
  );
return $items;
}

MENU_NORMAL_ITEMは のデフォルト値であるため、指定する必要はありませtypeん。

また、私たちの尊敬するウェブチックが言ったように

于 2011-07-03T01:45:29.647 に答える
0

参考までに、上記のリンクはに移動しました

http://api.drupal.org/api/examples/page_example--page_example.module/6

于 2010-11-05T10:56:02.350 に答える
0

Drupal 5 (配列コンテンツ) と Drupal 6 ($may_cache なし、パスでインデックス付けされた $items) 構文を hook_menu に組み合わせて使用​​しているようです。

Drupal 6 を使用している場合、これは次のようになります。

<?php
function helloworld_perm() {
  return array('access helloworld content');
} 

function helloworld_listado(){
 return "yea";
}

function helloworld_menu(){
    $items = array();
    $items["listado"] = array(
        'title'            => t('Listado de empresas'),
        'page callback'    => 'helloworld_listado',
        'access arguments' => array('access helloworld content'),
        'type'             => MENU_NORMAL_ITEM,
      );
    return $items;
}
?>

MENU_NORMAL_ITEM'type' のデフォルト値であるため、指定する必要がないことに注意してください。

また、私たちの尊敬するウェブチックが言ったように、彼女が指し示しているページで詳細な説明を見つけることができます.

于 2009-01-25T10:35:21.517 に答える