Utilisation de hook_menu

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour ,

En fait, Je dois développer un module Drupal (7.21), et pour cela, j'utilise les hook_menu, mais je n'arrive pas à accéder à la page que je crée.

Mon code de mon hook_menu est le suivant :

function mymodule_menu(){
$items['mypage'] = array(
    'title' => 'My page',
    'type' => MENU_NORMAL_ITEM,
    'page callback' => 'mymodule_mypage',
    'access arguments' => array('access content'),
       );
    return $items;
}

J'arrive à chaque fois au même résultat : lorsque je tente d’accéder à ma page (à l'adresse localhost/drupal-7.23/mypage), elle contient la page d’accueil de WampServer (contenant la configuration du serveur, la version d'Apache...)

Savez-vous à quoi cela est du et/ou, mieux, comment y remédier ?

Forum : 
Version de Drupal : 
Tags : 

Bonjour,
quand la hook mymodule_menu() est executée,Drupal recherche le chemin de ta page'mypage'
il ne trouve ce chemin parceque l'accés se fait via 'localhost/drupal-7.23/mypage'.
donc tu dois spécifier le bon chemin au lieu de $items['mypage'] tu mets $items['localhost/drupal7-23/mypage'].
en procédant ainsi Drupal va cherchercher les chemins
-localhost/drupal7-23/mypage
-localhost/drupal7-23
_localhost

je suis pas spécialement d'accord avec @aguisse car pour moi $items['mypage'] est un chemin relatif a drupal et non l'url complete.

est ce que ta fonction de page callback se trouve bien dans ton mymodule.module?

n'esite pas utiliser devel et mettre dans ton code des dpm($variable); pour suivre ce que tu fais.