Message d'avertissement

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

Node.tpl.php ne fonctionne pas pour Bartik (D7) ?

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 re-débarque dans la galaxie Drupal, et découvre la version 7. J'aimerais customizer mon affichage de noeuds en modifiant node.tpl.php ou en créant des node--[nodetype].tpl.php, mais...
Il n'y a pas de node.tpl.php dans Bartik !
Comment cela se fait-il ? Je n'ai trouvé de réponse nulle part.
Merci de m'éclairer !
Maxime

Version de Drupal : 

il utilise directement le node.tpl.php qui se trouve dans drupal/modules/node/

pour le surchager, il suffit de le copier dans le thème que tu utilises et effectuer tes modifications.

(ne pas oublier de vider le cache)

Cool c'est bon ça fonctionne, en fait il fallait désactiver l'affichage par display suite, qui override le node.tpl.php.
Puis-je en profiter pour poser une petite question de template ?
Où puis-je trouver des infos sur la syntaxe à suivre pour faire afficher le contenu d'un field ?
J'ai fait afficher toutes les variables avec

<?php
print '<pre>';
print
htmlspecialchars(print_r(get_defined_vars(), TRUE), ENT_QUOTES);
print
'</pre>';
?>

Et pour le champ "auteur" (taxonomie) que je souhaite afficher, j'obtiens :

field_auteur] => Array
                (
                    [0] => Array
                        (
                            [tid] => 12
                            [taxonomy_term] => stdClass Object
                                (
                                    [tid] => 12
                                    [vid] => 4
                                    [name] => Jack London

Pour faire afficher Jack London, j'ai à peu près tout essayé, par exemple :

print $node->field_auteur['en'][0]['name'];
print $node->field_auteur['fr'][0]['name'];
print $node->field_auteur[0]['name'];

Et ça ne marche pas...
Pourriez-vous m'indiquer une ressource pour que je comprenne ça ?
Merci !

En fait ça marche, mais j'ai un message warning qui s'affiche :
Notice : Use of undefined constant safe_value - assumed 'safe_value' dans include() (ligne 87 dans /Applications/XAMPP/xamppfiles/htdocs/esj/themes/bartik/templates/node--article.tpl.php).
Comment puis-je faire plus proprement ?
Merci encore !

Bonjour je rencontre le meme probleme

mon code

Array
(
    [template_file] => sites/all/themes/contrib/montheme/templates/ds-2col-stacked--node-offre-generale.tpl.php
    [variables] => Array
        (
            [form] => Array
                (
                    [#node_edit_form] => 1
                    [#attributes] => Array
                        (
                            [class] => Array
                                (
                                    [0] => node-form
                                    [1] => node-offre_generale-form
                                    [2] => ds-2col-stacked
                                )

                            [enctype] => multipart/form-data
                        )

                    [#node] => stdClass Object
                        (
                            [vid] =>
                            [uid] => 401
                            [title] => Clone of Ttitre
                            [log] =>
                            [status] => 0
                            [comment] => 2

Pourriez vous me donner un coup de main a afficher title?

Merci d'avance

Bonjour,

je pense que pour le coup tu aurais pu ouvrir un nouveau sujet de forum, plutôt que reprendre un sujet de 2011...

Comme le node est une classe d'objet (stdClass Object), l'affichage du titre se fera de la manière

print $node->title;
Vue l'arborescence, ce sera peut-être

print $variables['form']['#node']->title;