Ce billet est le premier d’une nouvelle série qui aura pour objectif de présenter divers modules utiles ou intéressants. Certains modules majeurs auront quand à eux des articles plus complet avec leurs screencasts (CCK, Views, Localization…).
Le premier module présenté est Login Destination.
Lorsque vous vous logguez sur votre site, vous arrivez sur la page d’accueil (par défaut http://votresite.com/node). Cette page se choisi dans /admin/settings/site-information. L’inconvénient est que cette page est définie pour tous les utilisateurs de votre site, sans tenir compte de leur statut, administrateur ou anonymes.
Vous aurez peut être envie que vos utilisateurs aient chacun une homepage différente. C’est ici que login destination intervient.
En insérant ce code dans l’interface de configuration (admin/user/login_destination):

global $user;
switch ($user->name) {
case admin : return 'admin'; break;
case editeur: return 'node/add'; break;
default: return 'node'; break;
}
Vos utilisateurs seront redirigés vers la page définie.
case NomUtilisateur :
return ‘chemin/drupal’;
break;
Le ‘chemin/drupal’ correspond au chemin pris en compte par Drupal dans son architecture. Il indique la page que vous souhaitez utiliser comme « login destination» .
Le paramètre utilisé dans le switch ($user->name) peut varier. Nous verrons dans les prochains articles consacrés aux utilisateurs (via l’interface web, puis l’utilisation dans le code) que la liste de paramètres possibles est importante (autant que l’objet user à de paramètre). Nous pouvons par exemple utiliser ($node->role) pour rediriger des groupes d’utilisateurs entiers. Si vous suivez le lien donné en début de billet, vous verrez que vous pouvez utiliser un if, toute syntaxe est valable, à vous de l’adapter à vos besoins.
Le module n’est à l’heure actuelle pas avancé au point de permettre à l’utilisateur de choisir lui même la page qu’il souhaite, si vous souhaitez contribuer à ce module et que vous êtes motivés, n’hésitez pas à aller sur drupal.org
« Application iPhone: Drupal Notifier | RBL Forms, un outils de création de formulaires pour jQuery »
Un trackback
5 commentaires
leknoppix
22 septembre 2009 à 8:17
1Lire cet article 10 minutes après s’être levé, j’ai rien compris. Une seconde lecture s’impose.
Un screencast video aurait-été bienvenue!!!
Mais comme toujours, très bon article.
Nanak
22 septembre 2009 à 9:39
2@leknoppix:
Hello, je ne sais pas si un screencast est vraiment utile utile pour voir les effets d’une fonctionnalité, je n’ai donné qu’un exemple, mais les possibilités sont nombreuses!
super_g2
22 septembre 2009 à 20:52
3tiens, un module que je ne connaissai pas, très intéressant, moi qui aime bien ajouter mon petit snippet php dans les pages, pourquoi ne pas faire des pages différentes tout simplement et gérer l’accès via un module
nice
on peut faire des switch via beaucoup de variables, mais tu en parleras il me semble bientot
Nanak
23 septembre 2009 à 10:13
4@super_g2:
c’est pour ça que je dis qu’il n’est pas super avancé, ya plein de possibilités pour améliorer ce module! L’objet $user dispose de 24 propriétés, pas toutes exploitables mais on peut faire des choses sympa
super_gg
23 septembre 2009 à 14:32
5yep, tout a fait d’accord. Drupal recèle bien des atouts versus un framework où beaucoup de choses sont à faire (je parle pour un dév soit pressé, soit peu expérimenté)
let’s rock next how-to
Laisser un commentaire
Devenir Fan de Dator.fr
Nuage de tags
Sponsors
Blogoliste
Blogs Amis
Derniers Posts
Derniers Commentaires
Les meilleurs sujets
Propulsé par WordPress