Submitted by apprenti on
Bonjour,
Je travaille actuellement sur la mise en page de la page d'accueil de mon site en Drupal 6.12. J'ai crée une view qui sélectionne les contenus qui sont promus à la page d'accueil et j'ai crée une page page.front.tpl.php qui contient ma mise en page de page d'accueil.
J'aimerais modifier le code HTML qui est produit par le module Views en modifiant les fichiers views-view-fields.tpl.php et views-view-unformatted.tpl.php que j'ai copié dans mon répertoire theme. Cependant j'aimerais que mes modifications ne s'appliquent que aux views qui me servent dans ma page d'accueil.
Il semblerait que « suggestions » puisse m'aider à faire quelque chose.. mais je suis un peu perdu avec comment les faire marcher dans mon cas.
Bonjour, je suis comme toi
Permalien Soumis par djibi.jb le 28 Août, 2009 - 14:13
Bonjour,
je suis comme toi un peu nouveau à Drupal, son architecture et sa manière de fonctionner, donc toutes mes excuses à ceux qui trouveront mon charabia peu clair.
J'ai eu un problème similaire quand j'ai voulu intégrer Jquery Tools (http://flowplayer.org/tools/index.html) avec Drupal (grâce au module JQuery Tools pour Drupal 6 (http://drupal.org/project/jquerytools)), il n'y a pas vraiment de module pour faire les outils (les tabs, le tooltip, le scrollable) automatiquement, donc faut faire "à la main".
Je te donne la démarche que j'ai suivie pour arriver à mes fins:
Premier lien important, la documentation du module Views :
http://views-help.doc.logrus.com/help/views/using-theme
Ensuite pour procéder :
Tu vas dans les paramètres de ta vue (admin/build/views/edit/%tavue),
Dans la section Basic Settings, il y a un champ qui s'appelle Theme avec la valeur Information.
En cliquant dessus, tu vas pouvoir voir les suggestions pour les fichiers de template.
Tu as plusieurs choix :
(dans mon cas)
Display output
Style output
Row style output
Field Content: Image
Field Node: Title
Field Node: Body
Field Content: link
Cette longue liste de noms de fichiers .php.tpl te donnent pas mal d'informations :
La question maintenant est :
quel fichier template dois je créer ? Celui qui modifiera le Display output ? le Style output ?
Un saut sur la documentation de Views (http://views-help.doc.logrus.com/help/views/style) te donne les informations dont tu as besoin.
En pratique, comment fait on ?
(pour ne pas trop paraitre générique, je prends l'exemple où je modifie le style de la ligne (views-view-fields--tavue.tpl.php)
<?php drupal_set_message('<pre>' . var_export($row, true) . '</pre>'); ?>
dans ton fichier php, ça te donnera un bloc avec les champs auxquels tu as accès.<?php print($row->{'title'}); ?>
.Deux points importants :
Comme tu as modifié ta vue et qu'elle ressemble à ce que tu souhaites, tu peux donc la publier en page d'accueil, soit en tant que bloc soit en tant que page.
Voilà pour ma réponse. Comme dit plus haut dans le post, je suis un petit nouveau sur Drupal, il y a donc pas mal d'erreurs. Si quelqu'un de plus expérimenté veut corriger ou ajouter un point, j'en serai plus que ravi. On est là pour apprendre.
Un bon lien pour le theming
Permalien Soumis par djibi.jb le 10 Septembre, 2009 - 11:53
Un bon lien pour le theming de Views2 en utilisant les templates (en anglais)
http://www.group42.ca/theming_views_2_the_basics
Merci pour ces réponses qui
Permalien Soumis par apprenti le 11 Septembre, 2009 - 09:00
Merci pour ces réponses qui sont trés claires et complètes. vraiment génial d'avoir ce genre de feedback.
J'en profite pour poster un
Permalien Soumis par djibi.jb le 13 Septembre, 2009 - 15:47
J'en profite pour poster un lien sur le "theming" de Views (ça pourrait servir aux personnes qui cherchent sur le forum)
Ca me semble bien plus simple que d'utiliser les fichiers de templates, on utilise la fonction 'output rewrite' intégrée à Views2.
Après il y a sûrement des inconvénients et avantages à chacune des méthodes.
pour le lien c'est par ici (en anglais):
http://pras.net.np/blogs/styling-views-using-output-rewrite
superbes tes explications.
Permalien Soumis par nyl auster le 14 Septembre, 2009 - 01:31
superbes tes explications. Et très malin la dernière solution. A tel point que cela devrait être tout simplement implémenté de base. A voir aussi ce module que je n'ai pas testé mais qui se rapproche sans doute de cette approche qui à la merite d'être claire
http://drupalmodules.com/module/semantic-views