[résolu] Associer une image à un type de contenu affichée en teaser

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,
Re moi avec un nouveau défi...
Je rappelle que le 1er (http://drupalfr.org/node/2986) n'a toujours pas été relevé...
J'aimerais associer une image/icone (sous forme de thumbnail) à un type de contenu...
Existe-t-il un module pour cette manip?
Merci

Version de Drupal : 

Petites questions :
- Tu veux pouvoir l'envoyer via l'admin du site ?
- Une, et une seule, images/icone par type de contenu ? (pas d'exception donc ?)
- Il faut que ca resize l'icone tout seul ou tu peux le faire ?

Déjà quelques réponses ici, et suivant tes demandes, ca devrait pas être trop dur d'arriver a faire quelque chose (mais sans module, directement avec un peu de php dans les fichiers .tpl.php)

Tiens mon drupal sauveur!!!!
loll
En effet je souhaiterais associer toujours un contenu à une image (ex : niouzes un journal, ciné une bobine... tu vois quoi..) soit en créant un type de contenu par type de billet et en lui associant un thumbnail ou bien en associant un thumbnail à une taxonomie... Comme c'est le plus simple, quoi...
Pour le redimensionnement, je peux le faire moi même...
Alors docteur...?

Bon bon bon ... alors. A nous deux.

De une, je préviens, c'est une solution "crade", mais qui a l'avantage de marcher.

On va directement aller chatouiller le fichier "node.tpl.php"

Sur un "garland" de test, j'ai mis ce code tout de suite apres la ligne où tu as "< div id="node-...."

<?php
 
if ($node->type == "story" && $teaser == TRUE) {
   
?>
<div class="picto_story"><img src="<?php echo path_to_theme();?>/images/story.png" alt="" /></div> <?
  }

  if ($node->type == "page") {
    ?> <div class="picto_page"><img src="<?php echo path_to_theme();?>/images/page.png" alt="" /></div> <?
  }
?>

Décorticage de code :
- Le bloc "if (...) { ... }" est a répéter autant de fois que tu as de "type" différents où tu veux une icone
- Il faut bien sur adapter le $node->type == "XXX" où XXX est égale au nom "machine" de ton type (sans espace, sans caractère bizarre, ...)
- Tu peux remarquer sur dans le premier "if", j'ai un "&& $teaser == TRUE" que j'ai pas dans le deuxième "if". C'est a ajouter si tu souhaite que l'icône n'apparaisse QUE dans le teaser, et plus dans l'article complet
- Les images sont a mettre dans le répertoire /images/ qui se trouve DANS ton theme (donc /themes/mon_theme/images/) via ftp, a la bonne taille (j'avais dis que c'était crade ...)
- Tu remarques que j'ai mis deux classe différentes, sur les "div" entourant les "img". Celà pour te permettre de travailler l'image via css apres. Je pense surtout a y mettre un float:left (ou right) pour l'intégrer au mieux. Mais c'est bien sur optionelle.
- Tu peux bien sur mettre ce code où tu veux, je l'ai mis dans le div du "node" directement, mais tu peux le deplacer, selon tes besoins
- Tu peux checker un exemple sur http://ssh.petit-pixel.net/drupal/drupal5/

Je pense avoir fait le tour, si t'as questions, hésites pas ;)

(je pourrais en faire un module, de ce truc .... si les journées étaient un peu plus longues :D)

Juste une autre idée un peu plus propre : si tu arrives à trouver un typage CSS différent, tu prends en charge l'affichage de 'image dans la feuille de style. Tu peux faire un copier-coller d'un exemple ici, pour voir?