【问题标题】:Drupal WebForms Data Structure Reference?Drupal WebForms 数据结构参考?
【发布时间】:2014-02-08 00:50:54
【问题描述】:

我对 Drupal 比较陌生。我们有一个网站,我被要求加入并进行一些更改。我正在定制 Webforms 模块的输出。我在这样做时遇到了麻烦,因为我似乎找不到对 Webforms 使用的各种数据结构的引用。

例如,我需要更改预处理挂钩中的某些内容。传入钩子的是一个名为 $variables 的结构。我可以看到属性被添加到我想要更改的部分,所以我知道我在正确的钩子里。我想做的是在文本中添加一些内容。但我不知道文本在 $variables 中的哪个位置,所以我可以更改它。

我确定我需要更改的内容就在那里,但我似乎无法理解。我在网上找到的所有文档要么是“粘贴此代码”,要么假设您知道数据结构。

所以:

1. 这些结构是否有任何参考? $variables 是其中之一。 $submission$components 是其他人。可能还有更多。我知道他们的内容因特定的网络表单而有很大差异,但正在寻找一般参考。

2. 如何从钩子内部查看其中一个结构的内容?我已经尝试了很多东西,但没有运气。将其输出到 Apache 日志或显示在屏幕上会很棒...

任何帮助将不胜感激。感觉这里有真正的力量,但我无法理解它,因为我缺少一些基础知识。

【问题讨论】:

    标签: drupal


    【解决方案1】:

    我会说你需要安装 2 个模块才能弄清楚发生了什么......

    Devel,让你使用dmp功能。这会将整个数组输出到消息区域。

    然后是我最喜欢的新模块Search Krumo

    Web 表单是从大量数据中生成的,仅查看 dmp 输出通常很难找到与您相关的位。 Search Krumo 在消息区域中放置了一个搜索框,允许您在整个数组结构中搜索字符串的任何实例。当您找到相关的位时,它还允许您复制该数组元素的路径,以便您可以轻松地修改深埋在多数组中的值。

    编辑:

    如果您不想在屏幕上显示输出,而是希望将其记录下来,请使用Devel Debug Log。对于调试 ajax 请求等非常有用。

    如果您只需要记录简单的字符串而不是整个数组,那么dd 函数与tail -f /tmp/drupal_debug.txt 结合使用非常有用,前提是您具有 SSH 访问权限。

    【讨论】:

    • 那些已经安装并且使用它们有很大帮助。在某些情况下,如果它们的输出对发送到文件或日志会很好,当页面正在更改时,而在其他时候将其放在页面上是不切实际的。感谢您的帮助!
    • @DanBarron 我刚刚用记录该数据的方法更新了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多