[Résolu] Comment associer un affichage ou une view à un type de contenu

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.

J'ai beau relire les tutoriaux il y a un truc qui m'échappe
(PS : je voudrais que la modération supprime mon sujet précédent, que j'ai exprimé de manière trop confuse et qui n'apportera rien au forum, merci d'avance).

"comment associer automatiquement un affichage (ou une vue) à un type de contenu"

"automatiquement" car je ne veux pas laisser le choix à l'utilisateur lorsqu'il créée ce type de contenu.

Voici ce que j'ai fait :

j'ai un type de contenu appelé "image" standard avec un champ simple "image"
J'ai créé un second type de contenu "image2" qui me permet de faire un upload groupé d'images (en vue de créer des diaporamas), avec un champ "imagefield_image" créé, et le module fupload qui fonctionne bien.

Dans les views standard j'ai une vue "immage gallery"
J'ai un affichage standard 'image gallery' auquel j'ai mis un filtre node = image seulement)
avec :
- le champ image standard,
- le champ titre qui récupère le titre de chaque node-image.

je l'utilise d'ailleurs pour un trombinoscope simple des membres du site sans souci avec 18 têtes affichées par page, leurs noms en dessous, et une pagination, accessible via menu.

Je souhaite afficher de manière différente les photos uploadées dans un contenu de type "image2". j'ai donc créé un affichage qui supplante les valeurs par défaut et où j'ai bien indiqué que ça ne concernait que le type de node "image2"

où : j'ai enlevé le champ image standard et le champ titre (inutile pour mon upload multiple) et j'ai rajouté le champ "imagefield_image" créé pour mon upload.
J'ai aussi pensé à décoché le groupage des photos car dans un premier test ça affichait tout verticalement.

j'ai deux termes de taxonomy (un vocabulaire), qui reprend le noms des deux galeries créées
pour l'instant ce sont des tests).

Je créé un contenu de type image 2, j'upload mes images multiples, je donne le bon terme de taxonomy associé à ma seconde galerie.

Là je m'imagine qu'il va bien choisir l'affichage "image galllery 2" puisque associé à ce type de contenu, et non .... il prend le premier affichage. et du coup le champ "imagefield_image" ne s'affiche pas et donc pas mes photos.

Si je rajoute le champ dans la première vue (ce que j'ai fait au début), ça marche mais comme j'ai aussi le titre dans les champs, ça me sort le titre du contenu au dessus de toutes les photos, qui sont associé à un node et donc le même titre partout. c'est pour ça que j'ai décidé de créé un nouvel affichage, un avec le titre et un sans le titre pour les galeries importantes.

d'où la question "comment associer automatiquement un affichage (ou une vue) à un type de contenu"

là je bute dessus depuis hier.

Merci d'avance

Version de Drupal : 

Merci Cyprien

j'ai essayé avec une seconde vue, mais je n'arrive pas à l'affecter à mon second type de contenu, du moins qpour ce qui concerne les galeries. J'ai bien séparé les vocabulaires, spécifié uniquement mon second type pour la seconde vue, le premier pour la première mais rien n'y fait il utilise toujours la première vue .... je me suis arraché les cheveux ;-))

j'ai provisoirement contourné le probléme en créant un champ "titre_pour_vue" dans la première, que j'affiche et qui lui peut-être vide, ce qui est parfait pour mes images en FUPLOad.

MAis le besoin d'affecter une seconde vue va se répréenter et ça me semble plus "drupalien" comme méthode .... :-)

Bruno

Bonjour,

Note que si ta vue est un bloc, ce qui est fort possible vu ce que tu décris... tu peux aussi jouer sur les "visibility settings" du bloc et mettre un check PHP genre :

<?php
$node = node_load(arg(1));
if($node->type=="Montype"){
return TRUE;
}else{
return FALSE;
}

Hello

non, ma vue est un node.

MAis je patauge toujours dans View. Aujourd"hui je ne sais pas attacher une vue à un objet ou faire en sorte qu'elle fonctionne à tous les coups ...

c'est sensé fonctionner sans écrire du code ...

là j'ai créé une vue pour des nodes de type "fiche annonce". j'ai fait ma taxonomy, j'ai infiqué que ma vue concernait bien ce type de node, j'ai indiqué les champs à afficher et je suis incapable de faire fonctionner la vue, ni de gérer les vues en fonction des termes de taxonomy ...

je vais encore me remplonger dans les titoriaux mais qu'est-ce que je perds comme temps ...

enfin merci quand même