Submitted by ceadreak on
Bonjour chers drupaliens.
Tout d'abord, voici ma réalisation : www.berries-events.be
Ma page d'accueil se divise en 3 parties :
- une partie statique qui est la présentation et l'accès a la galerie
- une partie dynamique qui est l'insertion de la vue sur le dernier évènement de l'agenda.
- et une partie connexion utilisateur. (qui n'est pas le bloc de connexion par défaut ...)
Voici ma question :
Ma page d'accueil est un noeud, et le template de ce noeud est node-accueil.tpl.php.
J'ai eu beau chercher, je n'ai jamais trouvé comment insérer un bloc de connexion dans un noeud ... Ni comment modifier ce bloc, ainsi que le contenu qui apparaît lorsqu'un utilisateur veut créer un compte => "?q=user/register".
Est-ce que quelqu'un aurait assez de patience pour m'expliquer comment insérer un bloc de connexion sur ma page d'accueil, et comment modifier le contenu de celui-ci??
Merci d'avance.
Ced
ainsi que le contenu qui
Permalien Soumis par robin le 23 Avril, 2008 - 19:23
ainsi que le contenu qui apparaît lorsqu'un utilisateur veut créer un => ce module est parfait pour faire de la redirection aprés création de compte :
Login Destination
This module controls where users go after logging in. You can configure login destination on a settings page. It will be either static URL or a PHP snippet evaluating your own site's logic. You can also configure which pages redirection is applied.
To achieve this you can specify either a list of URLs or a PHP snippet to build this list dynamically. So, you can redirect user to various pages depending on which pages they are logging from.
http://drupal.org/project/login_destination
mais aussi logintobogan :
http://drupal.org/project/logintoboggan
The Login Toboggan module offers several modifications of the Drupal login system in an external module by offering the following features and usability improvements:
Ni comment modifier ce bloc, ainsi que le contenu qui apparaît lorsqu'un utilisateur veut créer un compte => "?q=user/register".
=> il y a forcément un module qui permet de modifier à sa guise le contenu qui apparait lors de l'enregistrement d'un user
Est-ce que quelqu'un aurait assez de patience pour m'expliquer comment insérer un bloc de connexion sur ma page d'accueil
=> les blocs sont insérés grâce aux régions. il y a typiquement la région "content" qui ferait apparaitre ton bloc en dessous le contenu principale...
tout ceci dépend de ton thème, de ta page d'accueil ..il nous manque des infos ...
afficher un bloc sur une page => pas de problèmes, mais pour l'insérer dans une "node", cela supposerai que tu publie en php tes ressources et que tu insérer le code php du bloc à chaque que cela est nécessaire...bizarre comme démarche :
regarde ici
http://drupal.org/node/21867
@robin : Merci pour ta
Permalien Soumis par ceadreak le 23 Avril, 2008 - 22:25
@robin :
Merci pour ta réponse donc comme je l'ai dis : ma page d'accueil est un node.
Je ne veux afficher le bloc de connexion que sur celle-ci. Mais pour configurer un bloc, il faut créer une nouvelle région et appeler celle-ci dans le fichier page.tpl.php du theme courant (me trompe-je?)
Ma question est donc : Comment afficher un bloc uniquement sur ma page d'accueil? (je sais qu'on peut spécifier sur quelle(s) page(s) afficher certains blocs dans la configuration de ceux-ci mais ce n'est pas ce que je veux car là, on parle toujours du page.tpl.php)
Donc je veux appeler mon bloc dans le template de ma page d'accueil.
Est-ce possible????
Merci
Ced
Et je n'ai pas trouvé le
Permalien Soumis par ceadreak le 23 Avril, 2008 - 22:27
Et je n'ai pas trouvé le module qui permet de modifier le contenu lors de l'enregistrement d'un user ....
Un doute, tu as essaye de
Permalien Soumis par tostinni le 24 Avril, 2008 - 15:57
Un doute, tu as essaye de mettre ton bloc "User login" dans la region "content" qui existe deja et le limiter a ton node ?
oui, il y a que ca comme
Permalien Soumis par robin le 24 Avril, 2008 - 20:59
oui, il y a que ca comme solution "facile" => afficher le bloc dans la région content et lui dire de l'afficher que pour ta node.
vouloir afficher un bloc dans une node n'est pas vraiment dans la philosophie de drupal, je te conseillerai plutôt un module qui te permettrai de mieux agencer ta page d'accueil,
finalement ce que tu veux c'est que le bloc user ne soit que sur la page d'accueil ? oui ? non ? si tel est le cas, pas besoin qu'il soit dans la "node" a proprement parlé
vouloir afficher un bloc
Permalien Soumis par tostinni le 25 Avril, 2008 - 05:33
vouloir afficher un bloc dans une node n'est pas vraiment dans la philosophie de drupal
comment cela ?
Si justement une region "contenu" a ete cree je ne vois pas en quoi ce ne serait pas la "philosophie de drupal" que de mettre ce bloc dans un node ?
D'ailleurs perso je trouve meme cela plutot extremement pratique car si j'ai par exemple un article, j'aimerai bien avoir un ti bloc bien "justifie" par rapport au texte (float:left tout ca) avec un micro resume de l'auteur par ex, ou bien une foto random ou que sais-je (view...)
vouloir afficher un bloc
Permalien Soumis par robin le 25 Avril, 2008 - 18:24
vouloir afficher un bloc dans une node => la je parles de mettre un bloc qui s'affichera dans le template node.tpl.php = la node à proprement (div.node par exemple) parlé, et ca c'est compliqué et pas drupalien
oui, je veux que mon bloc de
Permalien Soumis par ceadreak le 25 Avril, 2008 - 11:04
oui, je veux que mon bloc de connexion soit uniquement sur ma page d'accueil.
Le problème avec le bloc "content" c'est que je l'utilise déja. Dans le cas de ma création : www.berries-events.be je met une vue sur le dernier élément de l'agenda dans le bloc content...
J'ai bien essayé de recréé le formulaire de connexion pour le mettre directement dans un div dans mon node-accueil.tpl.php mais pas moyen... A mon avis c'est l'action du formulaire qui n'est pas bonne.
PS : j'ai toujours pas trouvé ou on modifie le template d'affichage du bloc de connexion - création d'un nouveau compte - demande d'un mot de passe...
Merci de vous intéresser à mon problème.
Ce n'est pas grave que la
Permalien Soumis par tostinni le 25 Avril, 2008 - 16:25
Ce n'est pas grave que la region "content" soit deja utilisee... Ce block est dans ses propres div donc il suffit de lui donner les attributs CSS qu'il faut pour le placer correctement.
Sinon tu peux faire violent et mettre le code qui genere se block dans ton template mais bon...
j'ai toujours pas trouvé ou
Permalien Soumis par robin le 25 Avril, 2008 - 18:28
j'ai toujours pas trouvé ou on modifie le template d'affichage du bloc de connexion - création d'un nouveau compte - demande d'un mot de passe...
=> ca, c'est dans le "core" de drupal , bidouillage pas facile, d'ailleurs, je sais pas ou les trouver moi même
tu peux placer plusieurs blocs dans ta région "content", tout est en effet histoire de css après (les mettre en flottants, prendre en compte leur largeur, les styler différemment, etc ...)
En soit il n'y a pas de
Permalien Soumis par tostinni le 25 Avril, 2008 - 19:09
En soit il n'y a pas de fonction theme_ pour ce block la, donc il est uniquement possible de jouer sur le CSS
Sinon il faut se recreer un block custom du genre http://drupal.org/node/92657
Voir au pire reecrire completement la fonction user_login_block
;-) c'est exactement le
Permalien Soumis par robin le 25 Avril, 2008 - 20:49
;-) c'est exactement le custom bloc que j'ai mis en place sur mon dexième site : http://nekodesign.net
tpl page : <?php
Permalien Soumis par jubjub le 25 Avril, 2008 - 23:05
tpl page :
<?php if($is_front) {?>
<?php print $nom_de_region_de_block ?>
<?php }; ?>
oui mais si tu mets ça, tu
Permalien Soumis par robin le 25 Avril, 2008 - 23:17
oui mais si tu mets ça, tu ne vois pas apparaître les régions dans l'administration de tes blocks (admin/build/block) puisque ce n'est pas la "front page".
moi j'ai ces deux régions dans page.tpl.php (et elles s'affichent dans admin/build/block)
<?php if ($is_front || strstr($_GET['q'], 'admin/build/block')) : ?>
<div id="frontpage01" class="frontpage">
<?php print $frontpage_01 ?>
</div>
<?php endif; ?>
<?php if ($is_front || strstr($_GET['q'], 'admin/build/block')) : ?>
<div id="frontpage02" class="frontpage">
<?php print $frontpage_02 ?>
</div>
<?php endif; ?>
ma solution a été de
Permalien Soumis par ceadreak le 26 Avril, 2008 - 01:22
ma solution a été de créer une région "connexion" et de la mettre en position relative et de jouer sur la position du bloc ... je pense que c est le plus simple. Maintenant je cherche toujours ou modifier ce put*** de texte lorsqu'un user veut créer un compte !!!!
Dans le core de drupal tu dis robin??? Mais je vois pas ou... Le pire c'est que je l'ai déja modifié une fois car ce n'est plus le texte d'origine vu que j'y trouve des infos sur mon site... Quelle galère :)
Merci de vos réponses
oui mais si tu mets ça, tu
Permalien Soumis par jubjub le 26 Avril, 2008 - 19:19
oui mais si tu mets ça, tu ne vois pas apparaître les régions dans l'administration de tes blocks (admin/build/block) puisque ce n'est pas la "front page".
ta page d'accueil est un node...
|> Dans l'administration du site, front page est bien ton node/x !!??
block connexion dans la region sidebar-left par exemple,
puis if is_front blabla
print sidebar_left
j'avais oublié que sa front
Permalien Soumis par robin le 26 Avril, 2008 - 21:45
j'avais oublié que sa front page était une node, ...quel bordel..
pour modifier le code du block user, ...j'ai pas trouvé, mais il y a forcément une fonction qui renvoi ...
faut chercher dans le handbook de dr.org..
je ne sais pas si le
Permalien Soumis par david_al_thor le 24 Juillet, 2009 - 13:32
je ne sais pas si le problème est toujours d'actualité, confronté à ton problème j'ai trouvé une solution - > ici