Submitted by alf_78 on
Bonjour à tous,
Je suis sous D7 et je souhaiterais mettre en place une page de login différente de mon site.
Je ne voudrais ni entête, ni pied de page, juste le bloc de connexion.
J'ai trouvé des informations pour mettre en place ce bloc (ce que j'ai réussi à faire) mais j'ai toujours l'entête qui s'affiche derrière.
Est ce que quelqu'un aurait une solution ou une idée ?
Mes sources :
http://drupal.org/node/154233
http://drupal.org/node/154236
Fichier attaché | Taille |
---|---|
User_Login.jpg | 99.01 Ko |
Bonjour, si c’est une page
Permalien Soumis par vincent59 le 5 Janvier, 2012 - 16:24
Bonjour,
si c'est une page complète, il faut passer par un page-user-login.tpl.php
http://drupal.org/node/1195754
http://drupal.org/node/1072294
Merci pour les infos. Hélas,
Permalien Soumis par alf_78 le 5 Janvier, 2012 - 17:33
Merci pour les infos.
Hélas, je n'arrive pas à avancer :(((
Voici ce que j'ai fait
Dans le fichier template.php de mon thème, j'ai rajouter les deux fonctions suivantes :
function montheme_theme($existing, $type, $theme, $path) {
return array(
'user_login' => array(
'template' => 'templates/user-login',
'arguments' => array('form' => NULL),
'render element' => 'form',
// other theme registration code...
),
);
}
function montheme_preprocess_user_login(&$variables) {
// là j'avoue ne pas savoir quoi mettre ???
}
Et j'ai créé mon fichier template user-login.tpl.php
<div id=login>
<h1>Identification</h1>
<fieldset id="inputs" class="form-item">
<input type="text" maxlength="60" name="name" id="username" size="30" value="" tabindex="1" class="form-text required" placeholder="Nom utilisateur" autofocus required />
<input type="password" name="pass" id="password" size="40" tabindex="2" class="form-text required" placeholder="Mot de passe" required />
</fieldset>
<fieldset id="actions">
<input type="hidden" name="form_id" id="edit-user-login" value="user_login" />
<input type="submit" name="op" id="edit-submit" value="Se connecter" tabindex="3" />
<div id="logo"></div>
</fieldset>
</div>
Afin de me faire mieux comprendre, je joints une image (dans mon premier message) qui montre le problème.
En fait, j'aimerais avoir juste l'encadré de connexion sans rien au fond.
En fait il faut partir d’un
Permalien Soumis par vincent59 le 6 Janvier, 2012 - 09:39
En fait il faut partir d'un fichier page.tpl.php (le template qui gère toute la page), et en faire une version spéciale pour user-login, en enlevant tout ce qui ne sert pas : entête, logo, etc.
Il y aura la partie css, js, l'ouverture html, et le code de ton template user-login
Lorsque je met le contenu de
Permalien Soumis par alf_78 le 6 Janvier, 2012 - 10:16
Lorsque je met le contenu de page.tpl.php dans mon template user-login.tpl.php, j'ai plein de Warning car il ne reconnait aucune variable ?????
Je pense qu’il faut créer un
Permalien Soumis par vincent59 le 6 Janvier, 2012 - 11:12
Je pense qu'il faut créer un template spécial page--user-login.tpl.php pour cela.
Voir les Drupal 7 template suggestions : http://drupal.org/node/1089656
SUPER !!!! Merci Vincent
Permalien Soumis par alf_78 le 6 Janvier, 2012 - 14:23
SUPER !!!!
Merci Vincent :)))))
Avec le contenu de cette page, j'ai compris qu'on n'avait pas besoin de modifier le fichier template.php pour définir le template pour une page précise.
Il suffit juste d'ajouter un template avec un nom bien codifié pour que Drupal le prenne en compte automatiquement.
Ma solution a été de créé un template : page--user--login.tpl.php
Et j'ai pu faire ce que je voulais dans ce fichier, les variables sont prises en compte automatiquement et j'ai pu coder directement ma page de connexion.
MERCI ENCORE VINCENT !!!
Salut alf_78, J’ai le même
Permalien Soumis par thomfort le 12 Avril, 2012 - 20:52
Salut alf_78,
J'ai le même problème que toi, j'ai finalement créé page--user--login.tpl.php. Avec cette méthode, je peux avoir une page complètement custom. Par contre, dois-je mettre une balise
<
form action> ? Comment as-tu procéder pour la validation?
Merci,
Salut thomfort, Pour la
Permalien Soumis par alf_78 le 13 Avril, 2012 - 12:43
Salut thomfort,
Pour la validation voici mon code
form id="user-login" method="post" accept-charset="UTF-8" action="/">
En fait, je lui dis simplement d'aller sur la page d'accueil du site.
En espérant avoir pu t'aider.
Merci pour ta réponse, c’est
Permalien Soumis par thomfort le 13 Avril, 2012 - 15:23
Merci pour ta réponse, c'est exactement ce que je voulais!
Bonjour, J’ai crée mon
Permalien Soumis par feugana1 le 15 Février, 2013 - 05:21
Bonjour,
J'ai crée mon page--user--login-tpl.php mais je ne sais pas comment l'appelé comme lien sur la page d'accueil de mon site. Comment est-ce que je fais?
Salut feugana1, pour pouvoir
Permalien Soumis par alf_78 le 15 Février, 2013 - 10:25
Salut feugana1,
pour pouvoir appeler cette page, il faut le configurer dans le menu Configuration/Système/Informations.
Dans le champs "Page d'accueil par défaut", tu indiques ta pages d'accueil, chez moi c'est "frontpage" (une vue à qui j'ai affecté cette url).
Et dans le champs "Page 403 par défaut (accès refusé)", c'est là que tu lui indique ta page de connexion "user/login".
Normalement, avec ca, il devrait aller chercher ton template "page--user--login.tpl.php"