如何设置网络表单的主题?[关闭]


12

我需要D7中的主题网络表单。

我怎样才能做到这一点 ?

在搜索中,我知道通过使用web-form-nid.tpl.php,我们可以将drupal个人表单作为主题。

在这种情况下,任何人都可以引导我主题化Web表单。


2
模块随附一个THEMING.TXT:drupalcode.org/project/webform.git/blob/HEAD : /THEMING.txt,该模块在THEMING的模块文档页面上列出:drupal.org/documentation/modules/webform
帕特里克·肯尼

Answers:


27

您可以使用设置单个Web表单的主题webform-form-nid.tpl.php

例如,如果我们的Webform节点ID为7,则创建一个模板文件webform-form-7.tpl.php,并将其放置在您的主题文件夹中。清除站点缓存。

不要一print_r($form);看到所有的元素。然后在您的html元素内呈现文件中的每个元素。

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

正如@Patrick Kenny所说的,阅读theming.txt,它解释了主题化Web表单的所有方面。


我不知道如何呈现“提交”按钮,请您帮忙
Matt Saunders 2015年

您能指定到目前为止您已经尝试过什么以及您的目标是什么?提交按钮可以通过这样的方式进行渲染<?php print render(drupal_render($ form ['submit'])); ?>执行print_r($ form); 以便更好地理解。
Anoop Joseph

1
或者,也可以渲染提交,只需执行以下操作:<?php print drupal_render_children($ form); ?>。它将呈现您尚未专门呈现的所有其他内容,对于我现在正在处理的表单,这只是提交按钮。
ProGrammar

4

如果您知道.tpl.php文件名,请执行以下操作:

  • 在您的主题中使用该名称创建一个空文件。应该模板的元素消失了吗?好。
  • 放置简单的html标签,看看它是否显示在您的元素上。它是?很好,您有正确的模板文件。
  • 查看您可以使用的所有变量:放在<pre><?php print_r(get_defined_vars()); ?></pre>模板中。
  • 现在,当您拥有文件和数据结构时,就执行此操作!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.