0

我已经在 drupal 中成功创建了一个页面,该页面在同一页面上显示表单和结果。表单就像结果的过滤器。结果包括一堆 html,其中包括通过 Chart API 模块 ( http://drupal.org/project/chart ) 的谷歌图表。结果通过标记表单元素包含在表单中(从伊顿的评论中获得:Drupal:如何在与表单相同的页面上呈现表单的结果)。

由于我无法访问表单 API 范围之外的表单结果(例如页面回调函数),我似乎无法真正为结果设置主题。有没有办法将复杂的结果与表单放在同一页面上并使结果主题化?此外,是否有更好的 drupal 方式在同一页面上显示表单结果?

4

2 回答 2

0

drupal 中的任何内容都是可主题化的——这是使 drupal 很棒的另一件事。您可以通过使用 hook_theme() 并在此处设置您想要使用的主题模板以及您希望传递给主题文件的参数来做到这一点。你会这样写主题

function MYMODULE_theme{
  return array(
    'theme_name'=>array(
      'arguments'=>array('parameters'=>NULL)
      'path'=>'path_to_theme_file',
      'theme'=>'template_name'
    ),
  );
}

然后,即使如帖子中所建议的那样,您也可以通过调用在参数可用的任何地方调用此主题theme('theme_name', $parameters);

于 2010-12-16T05:12:51.293 回答
0

我会对你的解决方案感兴趣。我们使用 Views 和 Exposed Filters 做了非常相似的声音。对视图的结果和表单进行主题化是在 drupal 中非常直接/标准的事情类型。示例:views-exposed-form-form_name.tpl.php 和 views-view-view_name.tpl.php。表单也是可变的,查看 hook_form_alter。

于 2010-12-16T05:21:50.897 回答