Message d'avertissement

The subscription service is currently unavailable. Please try again later.

[Résolu] Utiliser le champ Image de Drupal 7

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 créé un thème personnalisé.
Je tente d'utiliser le Champ image de type de contenu "Article" de Drupal 7.

Dans l'administration du type de contenu, j'utilise un champ "Image", de nom "field_image", avec un widget "Image".

Dans mon article, je renseigne ce champ en choisissant une image.

Or, en front-office, au lieu d'avoir une image, j'ai un champ comme ceci :

    <div class="field-items">
        <div class="field-item even" resource="http://image.meybeck.net/sites/default/files/field/image/services.png" rel="og:image rdfs:seeAlso"></div>
    </div>

Ma question est : comment obtenir une balise image au lieu de ce code ?

Merci pour vos réponses...

Version de Drupal : 

C'est bien là le problème : je créé mon thème de zéro.

Il doit me manquer une fonction, ou peut-être ajouter une variable à mon thème, mais j'ai beau chercher, je ne trouve rien (rien que je puisse comprendre en tout cas) !

Voulez-vus voir les codes de page.tpl.php ou node.tpl.php ?

Cela ne donnerait pas grand chose, tout se passe dans les fonctions de theming.

Par exemple, pour afficher une image, il faut utiliser la fonction theme_image.

Franchement vous prenez le problème par la face nord : il existe des tas de thèmes permettant de disposer d'une base solide et qui sont extrêmement adaptables. J'aime beaucoup Basic par exemple, mais ce n'est pas le seul.

Bien sûr, rien ne vous empêche de créer vos propres fonctions, voir d'écrire directement du HTML, mais vous vous privez de tout un tas de fonctionnalités très puissantes de l'API et du travail déjà fait par la communauté sur les thèmes de base.

Merci pour vos réponses.

Effectivement, je vais me pencher sérieusement sur cet aspect !

Mais commençant sur Drupal, il m'a semblé pertinent de traiter les problèmes un par un pour bien comprendre la bête, au vu de sa complexité.

Mais, sauf erreur, ceci ne m'explique pas comment utiliser ce champ d'image du type de contenu : j'imagine qu'il y a moyen d'exploiter l'attribut "resource" du div ".field-item even"... mais comment ?

Votre setup semble particulier. Je commencerais vraiment par utiliser un thème standard et voir si tout fonctionne correctement. Vous pourrez toujours comparer votre thème maison avec le standard et essayer de deviner ce qui cloche.

Votre démarche de prendre les choses l'une après l'autre est louable, mais malheureusement tout est lié dans Drupal. Je pense donc qu'une approche 'holistique' est plus adaptée pour commencer, quitte ensuite à creuser telle ou telle fonctionnalité particulière.

Alors il y a quelque chose de vraiment étrange. Les images devraient effectivement être là sans que vous ayez besoin de faire quoi que ce soit.

Est-ce que le Stark de base fonctionne ? Et les autres thèmes, comme Seven ? Avez-vous correctement renommé les fonctions quand vous l'avez copié ? Le namespacing est très important dans Drupal (comme partout en programmation d'ailleurs).

Merci de passer du temps sur mon problème !

Vous renseignez le champ image dans un article "sous le champ Tags" et au final il vous affiche donc bien une image...
Effectivement, si je remplace mon thème par Stark, ça fonctionne !

Mais sur mon thme, moi j'ai beau faire des tests dans tous les sens, supprimer des éléments, j'obtiens cette balise

<div class="field field-name-field-image field-type-image field-label-hidden">
    <div class="field-items">
        <div class="field-item even" resource="chemin/monimage.jpg" rel="og:image rdfs:seeAlso"></div>
    </div>
</div>

Je vais continuer mes tests...

Bon.

Après quelques mois d'utlilisation assez intensive de Drupal, je me suis remis sur ce site, et la solution au problème m'est apparue rapidement.

C'est complètement idiot.

En fait, ce site est fait pour une entreprise qui s'appelle Image. Donc mon thème s'appelait image. Donc problème avec le module image. Voilà. En renommant le thème, le problème a disparu !

Merci beaucoup à Numerizen pour le temps consacré à répondre à mes messages !