Comment puis-je créer un thème pour un formulaire Web? [fermé]


12

J'ai besoin de thématiser un formulaire Web en D7.

Comment puis je faire ça ?

Dans la recherche, j'ai appris qu'en utilisant web-form-nid.tpl.php, nous sommes en mesure de créer un thème pour un formulaire individuel drupal.

Quelqu'un pourrait-il me guider dans ce cas pour thème un formulaire Web.


2
Un module THEMING.TXT est inclus avec le module: drupalcode.org/project/webform.git/blob/HEAD:/THEMING.txt , qui est répertorié sur la page de documentation du module sous THEMING: drupal.org/documentation/modules/webform
Patrick Kenny

Réponses:


27

Vous pouvez créer un thème pour un formulaire Web individuel à l'aide de webform-form-nid.tpl.php.

Par exemple, si notre identifiant de nœud de formulaire Web est 7, créez un fichier de modèle webform-form-7.tpl.phpet placez-le dans votre dossier de thème. Vider le cache du site.

Faites un print_r($form);pour voir tous les éléments. Rendez ensuite chaque élément dans un fichier dans vos éléments html.

<li>
    <?php print drupal_render($form['submitted']['name']); ?>
</li>

Comme @Patrick Kenny l'a dit, lisez le theming.txt , il explique tous les aspects de la thématisation d'un formulaire Web


Je ne sais pas comment rendre le bouton d'
Matt Saunders

Pouvez-vous préciser ce que vous avez essayé jusqu'à présent et où vous avez frappé? Le bouton d'envoi peut être rendu par quelque chose comme ceci <? Php print render (drupal_render ($ form ['submit'])); ?> Faites un print_r ($ form); pour une meilleure compréhension.
Anoop Joseph

1
Ou, pour rendre la soumission, vous pouvez simplement faire: <? Php print drupal_render_children ($ form); ?>. Il rendra tout le reste que vous n'avez pas rendu spécifiquement, ce qui pour mon formulaire sur lequel je travaille maintenant n'est que le bouton de soumission.
ProGrammar

4

Si vous connaissez le nom de fichier .tpl.php, voici ce que vous faites:

  • Créez un fichier vide avec ce nom dans votre thème. L'élément qu'il devait modeler a disparu? Bien.
  • Mettez une simple balise html et voyez si elle est affichée à la place de votre élément. Il est? Très bien, vous avez un fichier modèle correct.
  • Voir toutes les variables que vous pouvez utiliser: placez-les <pre><?php print_r(get_defined_vars()); ?></pre>dans votre modèle.
  • Maintenant, quand vous avez une structure de fichiers et de données, faites-le!
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.