如何更改联系表7的形式行动网址是什么?(how to change form action url

2019-07-17 21:02发布

我使用的联系表格7在WordPress站点多种形式。 我需要直接一个形式不同的形式操作URL比其他人。

我发现下面的前一个线程的答复,但我不知道如何去做。 有人可以指定需要什么确切的代码被列入“其他设置”,什么在functions.php中的代码将会是什么样子?

谢谢你的帮助!


从差异答复。 线程,我不完全理解...

*是的,你必须改变“action”的属性,使用此过滤钩子wpcf7_form_action_url形式。 (这将是代码吗?),你可以添加勾入主题functions.php,然后就处理您的ASP页面的表单数据。 (代码?)*


Answer 1:

既然你不熟悉PHP代码在所有的,我给你一点速成班在WordPress的API中的编码。

首先,你需要知道函数和变量之间的区别。 变量是旨在表示任意值的单一实体。 该值可以是任何东西。 一个数字,某人的名字,或复杂的数据。

函数是什么,执行一系列的行动来发回-或返回 -一个变量,或改变给定的变量。

<?php
$a = 1; //Number
$b = 'b'; //String *note the quotes around it*
$c = my_function(); //Call to a function called my_function
echo $a; //1
echo $b; //b
echo $c; //oh, hello
function my_function()
{
    return 'oh, hello';
}
?>

WordPress的利用松散的基础上对自己的行为和过滤系统, 事件驱动的编程风格。

这意味着的是,WordPress是“侦听”特定事件发生,而当它,它执行附加到该事件(也称为回调)的功能。 这些都是“操作”和“过滤器”。 那么,有什么区别?

行动是指在做的东西的功能
过滤器是返回的东西功能

那么,如何这一切适合于你的问题?

联系表7都有自己的过滤器,返回的信息,哪里是它的形式发送的URL。

所以,让我们来看看在基础知识过滤钩子

add_filter('hook_name', 'your_filter');
  1. 是的add_filter告诉WordPress的,它需要监听特定事件的功能。
  2. “hook_name”是WordPress是侦听该事件。
  3. “your_filter”是函数 - 或回调 - 当“hook_name”事件被触发时调用。

以前的螺纹连接器的状态,你需要使用挂钩的名称是“wpcf7_form_action_url”。 这意味着,所有你需要做的就是作出一个的add_filter电话,设置“hook_name”到“wpcf7_form_action_url”,然后设置“your_filter”到你会被设置为你的回调函数的名称。

一旦这样做了,你只需要定义,不管你到位“your_filter”的匹配名称的功能,只是确保它返回一个URL来修改表单操作。

现在,这里是问题:这将改变所有表单。 但是,第一件事的第一:看看你是否可以得到一些工作的代码会在你自己。 只要写你的代码的functions.php,让我们知道结果如何。

更新:

你能这么快得到它其实是美好的,并显示出你正在投入这项研究工作的量。

把所有的这的functions.php

add_filter('wpcf7_form_action_url', 'wpcf7_custom_form_action_url');
function wpcf7_custom_form_action_url()
{
    return 'wheretopost.asp';
}

正如前面提到的那样,这将影响您的所有形式。 如果这个情况应该只是一个影响给定页面上的表单,你可以这样做:

add_filter('wpcf7_form_action_url', 'wpcf7_custom_form_action_url');
function wpcf7_custom_form_action_url($url)
{
    global $post;
    $id_to_change = 1;
    if($post->ID === $id_to_change)
        return 'wheretopost.asp';
    else
        return $url;
}

所有你需要做的是$ id_to_change值更改为一个数字,代表邮政/页你试图影响的ID。 因此,如果 - 例如 - 你有一个关于页面,你想改变的行动网址,你可以找到在管理控制台的关于页面的ID号(刚去的网页编辑器,并期待在您的网址为ID号)和改变为1〜无论ID号是。

希望这可以帮助你,和好运的你。



Answer 2:

一个成功提交像后,您可以添加操作文件说,

添加过滤器会在这个意义上的工作,它会改变形式的行动但不幸的是它也将打破插件的功能。 如果添加了过滤器像其他答案建议形式将提交后保持微调状态。

你可以使窗体做别的事情上,使用先进的设置,如提交:

on_submit: "alert('submit');"

有关高级设置的更多细节在这里 。



文章来源: how to change form action url for contact form 7?