1

我有一个表格,我打算提交给贝宝付款。

我已经尝试了几个选项,比如 Paypal API 等,但我似乎无法掌握它,因为我正在做的事情的要求非常简单。

现在我有一个表单,我正在使用 Webforms 来构建它。我很清楚 webforms 有其 action 属性的默认值,这并不容易改变。

此外,输入的名称似乎类似于:name="submitted[last_name]"

直截了当,我想将网络表单的操作 url 和字段名称从简单地更改为 name="last_name"

有没有简单的方法来做到这一点?如果有,我会很感激你的建议。

此外,如果我根据我的阅读假设这是不可能的,我已经阅读了这个问题(在 webform 提交的值上使用 Hook_form_alter),我可以创建一个基于 webform 的自定义模块并在那里进行更改。问题是我是 drupal 的新手,我仍在尝试了解如何使事情正常工作,我不知道如何启动或创建基于 webforms 的自定义模块。是否只是简单地将整个文件复制到 webforms 中,然后将所有出现的 webforms 替换为我的自定义模块名称?

4

1 回答 1

0

您不是从 webforms 创建模块,而是通常的做法是从另一个模块挂钩到特定表单。基本上你需要 1 个文件夹和 2 个文件,例如 mymodule 文件夹和 mymodule.info + mymodule.module 。放置这些的好地方是您的安装目录下的站点/所有/模块/自定义/。

在https://www.drupal.org/node/542202阅读有关 .info 文件的说明

您可以通过多种方式连接到 Web 表单,但大多数表单篡改案例中的标准方式都是从 hook_form_alter 开始的。你的模块可以这样开始

<?php
function mymodule_form_alter(&$form, &$form_state, $form_id){
  /* find and tamper with $form here
     install devel and then uncomment the following */
  //dpm($form);
}
于 2015-02-10T17:59:27.047 回答