2010-08-06 25 views
0

J'ai le code suivant dans un module personnalisé et j'ai firePHP installé (dfb ($ userId) est censé être écrit dans la console). À chaque page pageload je veux attraper et imprimer l'ID d'utilisateur actuel et je pense que ce qui suit devrait fonctionner mais ce n'est pas - quelqu'un peut-il me dire pourquoi?Drupal: identifiant de l'utilisateur dans hook_init();

function live_update_test_init() { 

    global $user; 

    $userId = $user->uid; 

    dfb($userId); 

// Tell drupal that we should watch for new 

if (arg(0) == 'frontpage' && !arg(1)) { 

    live_update_initialize('live-update-test'); 
    } 
} 
+0

Avez-vous activé la mise en cache des pages? –

Répondre

2

hook_init être exécuté sur wont pages mises en cache, qui est probablement ce que vous voyez. Si vous voulez exécuter du code même sur des pages mises en cache, vous devez utiliser hook_boot, mais attention à ne pas faire quelque chose de coûteux, car cela peut devenir un gros problème de performance.

+0

Alrigt merci beaucoup! Je voulais juste m'assurer que l'identifiant userId est disponible, donc je n'utiliserai pas hook_boot() – Martin