Submitted by Marie-Hélène on
Bonjour !
Je me bagarre avec l'affichage de mes blocs. J'vous essplique (et plic et ploc) :
Dans l'ensemble du site, je gère globalement l'affichage avec les moyens normaux de Drupal (le "afficher sur toutes les pages exceptées.." ou "afficher seulement sur les pages...").
Sur UN noeud précis (le 26) ET sur tous-les-noeuds-qui-ont-le-terme 17 ou le terme 18 (remember http://drupalfr.org/forum/support/developpement/24067-condition-php-sur-...), la colonne de droite change : les blocs habituels disparaissent et j'en affiche deux autres à la place.
Premièrement, j'arrive à conditionner l'affichage/non-affichage d'un bloc sur le noeud 26 (facile) mais pas sur les noeuds-qui-ont-le-terme 17 ou 18, j'ai pourtant essayé d'adapter le code de Julien mais nada. De surcroît, je voudrais combiner les deux (sur le noeud et sur lesnoeudsquiontletermetatatitatata).
Deuxièmement, j'ai tenté ma chance avec Context ; je parviens bien à faire apparaitre les 2 blocs en fonction du terme de taxonomie, et à la limite ça pourrait me suffire en les faisant apparaître sur le noeud 26 via l'administration usuelle ("afficher seulement sur les pages listées"). Le problème est que Context ne me permet pas de préciser que les blocs habituels disparaissent. Mes 2 blocs s'affichent donc en dessous des autres.
J'espère avoir été claire ; pouvez-vous me dire si j'ai une solution simple pour m'en sortir ou s'il faut envisager de mettre un vrai développeur sur le coup.
Merci !
Bonjour, Essaie ce module
Permalien Soumis par cogicube le 13 Septembre, 2010 - 14:48
Bonjour,
Essaie ce module "section"
http://drupal.org/project/sections
A+
Serge
Bonjour, Merci pour la
Permalien Soumis par Marie-Hélène le 13 Septembre, 2010 - 15:26
Bonjour,
Merci pour la suggestion, mais ça ne va pas : sections permet de changer de thèmes sur certaines pages, ce n'est pas ce que je veux faire (un affichage différent des blocs, mais dans le même thème).
Merci,
Context fait ça (c’est à lui
Permalien Soumis par cogicube le 13 Septembre, 2010 - 16:22
Context fait ça (c'est à lui que je pensais plutot qu'à sections.)
Il suffit de définir un contexte et de faire afficher les blocs que tu désires dedans. Context "over write" la config des blocs sur la page de gestion des blocs.
Serge
je n’ai pas vu comment
Permalien Soumis par Marie-Hélène le 13 Septembre, 2010 - 18:15
je n'ai pas vu comment "overwriter" : ce à quoi j'ai abouti, c'est tous les blocs apparaissent, même ceux que je ne veux plus voir... Je reviendrai dessus demain.
Hello Marie-Hélène, Display
Permalien Soumis par Pomliane le 13 Septembre, 2010 - 16:12
Hello Marie-Hélène,
Display Suite sait faire tout ce que tu souhaites et bien plus.
http://drupal.org/project/ds
Je pense que DS organise le
Permalien Soumis par cogicube le 13 Septembre, 2010 - 16:17
Je pense que DS organise le noeud mais ne permet pas d'organiser des blocks différents selon les pages.
Mais je peux me tromper
Serge
Display Suite organise, via
Permalien Soumis par Pomliane le 13 Septembre, 2010 - 16:28
Display Suite organise, via ses modules associés, l'affichage d'un peu tout : types de contenus, vues, résultats de recherche, commentaires, profils utilisateurs, etc.
Les blocs existants sont aussi gérés de même, bien sûr, que ceux créés par et pour Display Suite...
Il est possible en particulier de créer des "code fields" (PHP inside) qui se comportent comme des blocs...
Bonjour à tous, Je ne pense
Permalien Soumis par Thib le 13 Septembre, 2010 - 16:35
Bonjour à tous,
Je ne pense pas que ça soit ce que veut Marie Hélène...
Display suite permet bel et bien de gérer l'affichage d'un tas de chose tel que bloc, vue, commentaire MAIS, si je ne m'abuse, ne permet pas d'organiser l'affichage ou non de ces mêmes blocs, vues ou commentaires sur une page donnée...
Cordialement,
Thib'
C’est sans doute
Permalien Soumis par Pomliane le 13 Septembre, 2010 - 16:50
C'est sans doute surdimensionné pour le besoin, mais DS permet bien de :
Bon, d'accord, ce n'est sans doute pas LE module idéal juste pour ça... (quand on ♥, on est parfois aveuglé... ;))
Je retente ma chance avec une solution dédiée 100% blocs : Boxes (http://drupal.org/project/boxes)
Je teste Display Suite demain
Permalien Soumis par Marie-Hélène le 13 Septembre, 2010 - 18:17
Je teste Display Suite demain pour vérifier, mais ce que j'avais compris c'est qu'il organise l'affichage des données du node ; si l'affichage du bloc est par type de contenu, ça ne me va pas (ce sont des articles comme les autres sauf qu'ils sont taggés différemment). Je vois ça demain.
Normalement, c’est pil poil
Permalien Soumis par emerya le 13 Septembre, 2010 - 17:22
Normalement, c'est pil poil ce que permet le champ PHP code dans les blocs.
avec un petit print_r(menu_get_object()) tu vas voir que tu récupères toutes les infos.
Donc il va juste te falloir faire une condition, notamment avec menu_get_object()->nid==26 et sur la taxonomie. Je ne me rappelle juste plus si il te faut un foreach pour vérifier les termes de taxo ou si on les chopes directement (trou de mémoire sur un truc que j'ai déjà fait : je me fais vieux peut-être?)
Eh oui, c’était bien mon
Permalien Soumis par Marie-Hélène le 13 Septembre, 2010 - 18:19
Eh oui, c'était bien mon idée, mais dès qu'il faut coder je suis handicapée !! donc si je n'y arrive pas moi-même il faudra que je trouve un développeur qui sache faire parmi les nôtres !
Il va te falloir coller de
Permalien Soumis par Pomliane le 13 Septembre, 2010 - 18:40
Il va te falloir coller de petits bouts de code dans DS également cela dit, mais cela me paraît plus simple et plus cohérent de gérer l'ensemble de l'affichage avec ce module plutôt que de passer par différents modules pour les différentes problématiques rencontrées.
Cela dit, en conclusion / épanadiplose : tu es partie de Context et a rencontré des difficultés, pourtant, il s'agit d'une solution adaptée à ton cas d'utilisation et puissante...
Tu devrais donc peut-être y revenir... :)
Au cas où tu ne l'aurais pas déjà vu, voici un lien vers le podcast dédié à Context par l'excellent Rob Feature aka Bob Christensen.
Alors, fin de
Permalien Soumis par Marie-Hélène le 20 Septembre, 2010 - 12:37
Alors, fin de l'histoire :
finalement j'ai créé un type de contenu spécifique plutôt qu'utiliser des articles-taggués-avec-le-terme-17-ou-18.
j'ai donc dans mon site une sorte de section composée des contenus de ce type, d'une part, et du noeud 26 (qui est un autre CT) d'autre part.
il existe un module pour gérer l'affichage des blocs par type de contenu (http://drupal.org/project/block_node_visibility) ; mais il exclut tout autre condition (or moi, j'ai ce noeud 26).
Donc, j'ai eu recours au snippet PHP proposé par Yann (aka nyl_auster) ici http://drupalfr.org/node/8633, en l'adaptant avec l'aide d'un vrai informaticien (on a toujours besoin d'un petit développeur à portée de main).
Ce qui donne:
pour les blocs qui doivent s'afficher :
et pour les blocs qui doivent disparaître dans cette section :
Et voilà ! Merci à tous et particulièrement à Yann pour le snippet et (mon collègue) Jean-Baptiste pour les explications qui m'ont permis de l'adapter.