gpt4 book ai didi

wordpress - 如何更改联系表单 7 的表单操作 URL?

转载 作者:行者123 更新时间:2023-12-03 15:18:30 26 4
gpt4 key购买 nike

我在具有多种形式的 wordpress 网站中使用联系表 7。
我需要将一个表单指向与其他表单不同的表单操作 url。

我在下面的一个帖子中找到了回复,但我不知道该怎么做。
有人可以指定“附加设置”中需要包含哪些确切代码吗
functions.php 中的代码是什么样的?

谢谢你的帮助!

来自差异的回复。线程,我不完全理解......

*是的,您必须使用此过滤器 Hook wpcf7_form_action_url 更改表单中的“操作”属性。 (代码是什么?)您可以将钩子(Hook)添加到主题的functions.php 中,然后在您的ASP 页面中处理表单数据。 (代码?) *

最佳答案

由于您根本不熟悉 PHP 代码,因此我将为您提供一些关于 Wordpress API 中编码的速成类(class)。

首先,您需要了解函数和变量之间的区别。变量是用于表示任意值的单个实体。值可以是任何东西。一个数字、某人的名字或复杂的数据。

函数是执行一系列操作以发回或返回变量或更改给定变量的东西。

<?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 基于 Event-Driven Programming 松散地利用自己的操作和过滤系统。风格。

这意味着 Wordpress 正在“监听”某个事件的发生,当它发生时,它会执行一个附加到该事件的函数(也称为回调)。这些是“操作”和“过滤器”。那么有什么区别呢?

Action 是做事的函数
过滤器是返回内容的函数

那么这一切如何适应您的问题呢?

Contact Form 7 有自己的过滤器,它返回表单发送信息的 URL。

因此,让我们看一下 Filter Hook 的基础知识。
add_filter('hook_name', 'your_filter');
  • add_filter 是告诉 Wordpress 它需要监听的函数
    对于特定事件。
  • 'hook_name' 是 Wordpress 正在监听的事件。
  • 'your_filter' 是触发 'hook_name' 事件时调用的函数或回调。

  • 上一个线程的链接表明您需要使用的 Hook 名称是“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 的数字。因此,如果 - 例如 - 你有一个关于页面,你想更改操作 URL,你可以在管理仪表板中找到你的关于页面的 ID 号(只需转到页面编辑器并在你的 URL 中查找 ID number) 并将 1 更改为 ID 号。

    希望这对您有所帮助,并祝您好运。

    关于wordpress - 如何更改联系表单 7 的表单操作 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14177844/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com