[Résolu] Limiter la visibilité d'un bloc : impossible ?

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

Je désespère de comprendre la gestion de visibilité d'un bloc.
J'ai créé un bloc personnalisé, il contient un seul lien.

Lorsque je ne fais aucune restriction de visibilité dans le menu configuration de ce bloc, il apparait bien dans la colonne de gauche, pour tous les contenus, le lien qu'il contient fonctionne.

Problème :

je souhaite que ce bloc n'apparaisse QUE dans une vue associée à un type de contenu que j'ai créé

Si je donne l'adresse complète (http://localhost/tartempion/mapage) en cochant 'limiter aux pages listées', le bloc n'apparait pas dans la page cible.

J'ai fait le test avec des blocs standards, 'Recherche' par exemple, et c'est pareil.
Dès que je créée une limitation dans le menu configurer du bloc (limiter à une page ou à un rôle,ou à un type de contenu), ce dernier n'apparait plus.

Je tourne en rond depuis un moment sans voir d'issue.

Version de Drupal : 

Effectivement, quand je cible sur la page node/1 ça fontctionne.
Ca marche aussi quand je limite à un type de contenu, le bloc apparait quand j'affiche une des saisie faite pour ce type de contenu.

Mais la cible pour l'affichage de mon bloc est une vue qui affiche type de contenu que j'ai créé.
Cette vue est un tableau qui affiche une partie des champs du type de contenu. Je souhaite que sur la barre latérale gauche apparaisse le bloc créé.

Je constate que si je demande l'affichage du bloc 'recherche' (par exemple) sans limite de visibilité, il apparait bien dans la vue spécifique. J'en déduis qu'il est possible d'afficher des blocs dans une vue créée pour un type de contenu.

Mais je reste incapable d'afficher mon bloc uniquement pour cette vue.

Désolé, pour l'instant je travaille en local. Je tente de récapituler le besoin :

Structure souhaitée :

Page accueil :
1 onglet 'accueil'
1 onglet 'annuaire'

L'onglet annuaire n'est visible que pour les utilisateurs authentifiés -> ça c'est ok.

L'annuaire est un type de contenu spécifique, il contient des champs propres à l'annuaire souhaité.

L'idée c'est qu'en cliquant sur l'onglet 'annuaire' l'usager authentifié peut visualiser toutes les fiches de stage renseignées, cela sous forme de tableau.

Mais pour ne pas alourdir la consultation, je souhaite proposer un tableau contenant quelques champs seulement.

En cliquant sur le titre d'une des lignes du tableau, l'usager accède à la fiche complète avec tous les champs.

Pour réaliser ce tableau, le plus simple me semblait être la création d'une vue, format tableau -> ça c'est ok

En regard de ce tableau (donc dans la vue créée comme point de départ de consultation de l'annuaire), colonne de gauche, il faudrait un lien, dans un bloc, qui le conduit directement sur le formulaire pour renseigner un stage. -> ça ce n'est pas ok du tout, et c'est là que je coince !

J'ai créé un bloc, espérant limiter sa visibilité aux utilisateurs authentifiés et visible uniquement pour la vue 'annuaire'.

Le bloc apparait bien dans la colonne de gauche lorsqu'on arrive à la vue complète de la fiche de stage, après avoir cliqué sur le titre dans le tableau de la vue. Mais impossible de le faire apparaitre dans la vue format tableau.

D'accord, je vois mieux.
Si l'annuaire n'est visibile que pour les utilisateurs authentifiés, il suffirait de créer un bloc contenant le lien et de le limiter à la page /annuaire (son chemin).

Si le lien en question doit être absolument "dans" la view, voici plusieurs solutions :

Intégrer le lien dans le header de la vue ( Global: Text area ), puis jouer avec le css pour le positionnement :
http://img685.imageshack.us/img685/6173/headeruxp.jpg

Créer le tableau à la main :
- Sélectionner "Unformatted list" au lieu de "Tableau"
- Cocher "Exclude from display" dans les paramètres de chaque champ
- Créer un champ "Global: Custom text" et dans les paramètres appeler les autres champs dans le champ "Texte", exemple :

<div id="gauche">
    <a href="mon lien">mon lien</a>
</div>
<div id="droite">
    [field_date]
    [field_titre]
</div>

Merci pour tes propositions.

J'avais déjà tenté la première solution, sans succès. Suite à ton message j'ai tenté (par hasard) d'enlever le / dans le chemin donné pour définir la page, et : ça marche !

J'avais tenté avec l'adresse complète (http://localhost....) et avec le /annuaire et ça coinçait à chaque fois. Sans le / c'est ok.

Grand merci pour tes messages et tes propositions.