Affichage d'un champ CCK dans node.tpl.php

Catégories:

Bonjour,

J’aimerais afficher un champ de type entier dans un de mes noeuds avec la préférence.

J’ai créé un champ de type entier pour stocker des prix.
Comme suffixe j’ai mis «€»
Comme préférence d’affichage j’ai mis : 9 999

Si je rentre 3000, j’aimerais que sa m’affiche 3 000 €

J’ai essayé comme celà :

<?php print content_format('field_prix_france_ttc', $node->field_prix_france_ttc[0]); ?>

Le résultat : 3000 €

Merci d’avance pour votre aide !

#

D’une maniere générale, pour afficher un champ CCK, rajoute le suffixe _rendered a son nom, dans ton template. Ce qui donnerais ici :

<?php
print $field_prix_france_ttc_rendered;
?>

#

Merci beaucoup,ça marche, enfin presque car maintenant ça m’affiche le nom du champ en gras juste au dessus.

J’ai essayé de le faire disparaître :
<?php unset($field_prix_france_ttc['widget']['label']);?>
Visiblement c’est pas comme ça qu’il faut faire, est-ce qu’il y a une solution pour celà ?

Sinon je vais me débrouiller autrement, via php.

#

Pourquoi faire compliqué ? ;)

admin/content/types/[TonTypeDeContenu]/display/basic

Pour ton champ, mettre :
Etiquette (ou Label en anglais) : Hidden

#

Lol, mais oui bien sur…c’est bien mon genre de tout compliquer.

Par contre j’ai un dernier petit (gros) problème, je m’explique :

J’ai créé un module où je charge un noeud

<?php
$node
= node_load(45);
?>

Comment faire à ce moment pour utiliser cette fonction ?

#

Tu parles du fait de cacher les label ?
Normalement, cela devrait s’appliquer quel que soit le cas, a partir du moment tu passes par un node_view() pour générer ton noeud.

#

Non, ça ne marche pas tout court, je dois surement faire une erreur grossière.

Dans mon module je charge le noeud avec node_load().

Ce module travail avec un bloc dans le quel j’ai mis :

<?php
print $node->field_prix_france_ttc_rendered;
?>

Résultat : rien ne s’affiche.

Est-ce que si j’utilise la fonction node_view() celà s’arrangerait ?

Merci pour ton aide !

#

un print $node->field_prix_france_ttc_rendered ; c’est normal que ca ne marche pas. (voir procedure de creation des rendered de CCK pour l’explication :P).

Bref, sinon, tu as un module qui fait un node load, pour en tirer un field qui ira l’afficher dans un block … hummm … => pourquoi ne pas utiliser Views ? Il fera vraiment tout, tout seul comme un grand.

#

C’est ce que je me disais aussi :)
Views est un module géniale, c’est sur mais pour ce que je dois faire précisément, ça ne joue pas par contre je l’utilise pour pleins d’autres choses.

Encore merci pour l’aide que tu m’apporté, je vais regarder dans la doc de drupal si je trouve la solution.

Salutations.
Clément

Syndiquer le contenu