afficher un bloc selon l'url et le TID

Catégories:

Bonjour,

Je dois contrôler la visibilité d’un bloc selon l’url. Il faudrait que ce bloc (la taxo du blog) apparaisse uniquement sur les pages ayant une url à base de blog/»quelque chose».

Un petit coup de main php, svp ?

#

Hello,

Dans les paramètres de visibilité de ton block, sélectionnes «Afficher le bloc seulement dans les pages listées» et ajoutes la ligne :

blog/*

Maxime

#

Oui c’est ce que j’avais fait, mais je voudrais l’avoir en php ;)

Drupalfr.org est aussi sur freenode à #drupal-fr

Amipicto communication et publicité

#

Ah je n’avais pas compris ;)

Dans ce cas :

Quand tu fais appel au hook_block pour créer tes blocks tu dois spécifier :
- $blocks[delta_de_ton_block][‘visibility’] : correspond au champs radio «Afficher le bloc sur certaines pages seulement»
ainsi que :
- $blocks[0][‘pages’] : correspond au contenu du textarea «Pages» ;

Dans ton cas cela devrait être :


function tonmodule_block($op = 'list', $delta = 0, $edit = array()){
if($op == "list"){
$blocks[0]['info'] = t('mon block');
$blocks[0]['visibility'] = 1;
$blocks[0]['pages'] = "blog/*";
}
return $blocks;

}

Maxime

#

Merci ! Je vais tester.

Drupalfr.org est aussi sur freenode à #drupal-fr

Amipicto communication et publicité

#

En fait, j’ai un petit souci quand je clique sur «Ajouter un commentaire» sur le blog, la galerie ou les actualités.

Peu importe la view, avec ce type de lien je me retrouve avec des url du genre : comment/reply/185#comment-form donc je peux plus faire appel à un quelconque test sur l’url pour afficher mes blocs. La galerie aux commentaires ouverts et les actualités ont d’autres blocs visibles, ou non, et suivent le même schéma de détection d’url.

Donc ça va pas. Il me faudrait détecter en plus de la section selon l’url, le type de vocabulaire (chaque section à un vocabulaire différent).

Svp, un petit coup de main php pour une nulle en code ?

Drupalfr.org est aussi sur freenode à #drupal-fr

Amipicto communication et publicité

Syndiquer le contenu