Page 1 sur 3

Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 15:58
par LightBen
Bonjour, j'ai le code suivant :

Code : Tout sélectionner

<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="title"> <h3><?php print $block->subject ?></h3> </div> <div class="content"><?php print $block->content ?></div> </div>
Il affiche donc un titre suivi d'un contenu... mon problème, c'est que je ne voudrais afficher QUE du contenu si l'id (contenu dans le premier div) est égal à "$custom"

J'ai essayé de placer :

Code : Tout sélectionner

<?php if ($custom): ?> <?php endif; ?>
un peu partout, ou encore juste le if ($custom) (ou if (!($custom)) selon le cas) mais je n'ai pas réussi ce que je veux...

Cette petite condition me fait péter les plombs... si quelqu'un a une réponse, merci d'avance =)

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 16:30
par fab
<?php if($id == $custom) : ?>
non?

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 16:33
par LightBen
Peux-tu me l'inclure dans le code ? Merci =)

Edit : j'ai essayé ça mais ça ne marche pas non plus :

Code : Tout sélectionner

<?php if($id == $custom) : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="content"><?php print $block->content ?></div> </div> <?php else : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="title"> <h3><?php print $block->subject ?></h3> </div> <div class="content"><?php print $block->content ?></div> </div> <?php endif; ?>

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 16:55
par stealth35
quand tu parles de l'"id" c'est l'id HTML de la div ?

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 16:58
par LightBen
Oui oui

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 17:06
par stealth35
Oui oui
et dans ton code l'id est égale a ?

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 17:09
par LightBen
à :

Code : Tout sélectionner

<?php print "block-$block->module-$block->delta"; ?>

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 17:11
par stealth35
donc
if($custom == "block-$block->module-$block->delta")

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 17:16
par LightBen
Tu peux me l'inclure dans le code stp ?

J'ai essayé :

Code : Tout sélectionner

<?php if($custom == "block-$block->module-$block->delta") : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="content"><?php print $block->content ?></div> </div> <?php else : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="title"> <h3><?php print $block->subject ?></h3> </div> <div class="content"><?php print $block->content ?></div> </div> <?php endif; ?>
Mais ça marche pas

Voici ce que j'essaie de faire : sur le site : http:/www.i-mediaservices.com (j'enlève le site une fois résolu si ça pose problème) je veux enlever le titre "Accueil" en dessous du menu "accueil, contact" etc.

C'est Drupal, un CMS comme Joomla et compagnie. en fait l'affichage est composé de blocs qui sont gérés par le code que j'ai mis en premier post, avec un titre (précédé d'une icone) et un contenu.

Et ce bloc a l'id "custom". Donc pour ce bloc je ne voudrais afficher que le contenu... CMS pourri ! en dev classique ce serait réglé depuis deux secondes (contraintes obligatoires...)

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 17:29
par stealth35
c'est custom alors rien avoir avec $custom (je pensais que t'avais un variable avant)
if("custom" == "block-$block->module-$block->delta")

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 23:41
par LightBen
Aïe... excuse moi, j'ai écris vite, ça reste une variable, $custom et non custom...

Re: Une petite condition à placer... mais où ?

Posté : 11 mai 2010, 23:51
par stealth35
Aïe... excuse moi, j'ai écris vite, ça reste une variable, $custom et non custom...
non

Re: Une petite condition à placer... mais où ?

Posté : 12 mai 2010, 09:10
par LightBen
Comment ça non :?:

Tu dis ça parce que tu connais Drupal (moi je débute dessus) et que t'es sûr ou... ?

Donc le code c'est ça ? :

Code : Tout sélectionner

<?php if(custom == "block-$block->module-$block->delta") : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="content"><?php print $block->content ?></div> </div> <?php else : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="title"> <h3><?php print $block->subject ?></h3> </div> <div class="content"><?php print $block->content ?></div> </div> <?php endif; ?>
Edit : nop, ça ne marche toujours pas =( j'ai essayé en mettant != au lieu de == mais là tous les titres disparaissent, pas que le titre du bloc ayant l'id custom...

Edit 2 : je pense que la condition php doit être un peu plus imbriquée, du côté du "title" ?

Edit 3 (:P) : j'ai essayé ce code :

Code : Tout sélectionner

<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <div class="content"><?php print $block->content ?></div> </div> <?php else : ?> <div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>"> <?php if(custom != "block-$block->module-$block->delta") : ?> <div class="title"> <h3><?php print $block->subject ?></h3> </div> <div class="content"><?php print $block->content ?></div> </div>
Et ça marche PRESQUE : le bloc s'affiche une première fois sans le titre mais une fois avec, juste en dessous...

Edit 4 : en fait, tous les blocks s'affichent en double... une fois sans le titre, une fois avec...

Re: Une petite condition à placer... mais où ?

Posté : 12 mai 2010, 10:10
par stealth35
normal dans ta condition custom ca veux rien dire
<?php if(custom == "block-$block->module-$block->delta") : ?>
tu fais une comparaison avec une constante, c'est dois être fait avec une chaine
<?php if('custom' == "block-$block->module-$block->delta") : ?>
mais bon ca marchera jamais puisque la chaine est du type block-truc-bidule sauf si tu compares avec 'block-truc-custom' (par exemple)

Re: Une petite condition à placer... mais où ?

Posté : 12 mai 2010, 10:23
par LightBen
Donc faut trouver autre chose ou ça sert à rien ?