PROBLÈME: J'ai essayé quelques trucs pour obtenir Drupal d'arrêter d'aller à la page de l'utilisateur Prolfile lors de la connexion. J'ai même installé le module LoginToboggan , qui contient des fonctionnalités intéressantes, n'arrête pas Drupal d'envoyer tous les utilisateurs qui se connectent à leur page de profil utilisateur. Juste pour être clair, LoginToboggan "redirige éventuellement [l'utilisateur] vers une page spécifique lors de l'utilisation de la fonctionnalité de" connexion immédiate "" - est UNIQUEMENT pour les nouveaux utilisateurs, pas les utilisateurs existants ... Oui, je sais, cela n'a aucun sens.
OBJECTIF: Il suffit de pouvoir définir la page de connexion. pas besoin de définir le chargement de la page en fonction du rôle, mais bon, ce serait bien si ce n’est pas un complexe fou.
UPDATE: Vous avez trouvé un correctif en fonction de mes besoins, voir ma réponse ci-dessous.
Vous pouvez:
Deviner. Alors vous:
CONFIGURATION:
PROBLÈMES: L'inconvénient est qu'un utilisateur non connecté verra la page TITLE et qu'un utilisateur capable de se connecter verra la même page TITLE.
Veuillez commenter si cela n’a aucun sens, OR postez une autre réponse s’il existe une meilleure solution. Merci!!
J'ai entendu dire que plusieurs personnes utilisent le module de règles pour diriger les utilisateurs vers différentes pages lors de la connexion, en fonction de leur rôle, ou simplement pour effectuer une redirection générale vers la page à partir de laquelle la personne s'est connectée.
Bien sûr, vous pouvez le faire dans Drupal en utilisant le module Règles ...
Voici un exemple d'une telle règle pour Drupal version 7, dans ce qu'on appelle Règles "format d'exportation":
{ "rules_redirect_selected_roles_to_selected_term_pages" : {
"LABEL" : "Redirect selected roles to selected term pages",
"PLUGIN" : "reaction rule",
"ACTIVE" : false,
"OWNER" : "rules",
"REQUIRES" : [ "rules" ],
"ON" : { "user_login" : [] },
"IF" : [
{ "user_has_role" : { "account" : [ "account" ], "roles" : { "value" : { "5" : "5" } } } }
],
"DO" : [ { "redirect" : { "url" : "node\/123" } } ]
}
}
Vous devriez pouvoir simplement "importer" la règle ci-dessus dans votre propre installation Drupal via l'interface utilisateur de Drupal, à l'aide du lien intitulé " règle d'importation ". situé au chemin relatif admin/config/workflow/rules/reaction/import
dans votre propre site Drupal.
Quelques détails supplémentaires sur ce que la règle ci-dessus fait réellement:
User has logged in
.User has role(s) = subscriber
. En fait, le 4
du format d’exportation ci-dessus correspond à subscriber
de l’installation Drupal où j’ai exporté cette information, si vous voulez la modifier avant de l’importer, que 4
un 3
, il correspondrait à administrator
à la place (choisissez le "rôle" de votre choix, en le modifiant à l'aide de l'interface utilisateur des règles, après avoir importé cette règle). Si vous souhaitez que cela s'applique à un rôle, omettez (supprimez) cette condition de règles (le moyen le plus simple de procéder à cette suppression consiste à utiliser l'interface utilisateur des règles après avoir importé cet exemple).Page redirect = node/123
. Ce node/123
correspond à ce qui est souhaité dans l'installation Drupal d'où je l'ai exporté, mais vous pouvez simplement le remplacer par n'importe quel chemin valide (relatif) de votre choix. Assurez-vous donc que node/123
soit remplacé par le chemin relatif de la page correspondant à votre page " ... autre que le profil de l'utilisateur lors de la connexion ... ".Ça y est, fonctionne comme un charme!
Vous pourriez le rendre encore plus sophistiqué en améliorant la règle avec des options telles que:
PS: si vous êtes intéressé par (plus ou moins) plusieurs exemples de choses étonnantes que vous pouvez faire avec le module Règles , alors visitez ces réponses sur Drupal.SE (aux questions marquées avec le module Règles ).