改变联系表格7中[_url]短代码的行为

时间:2016-05-23 13:56:03

标签: php wordpress wordpress-plugin contact-form-7

我在我想要在邮件中发送的网址中获得了一些动态数据。

我在发送邮件时使用了短代码[_url]:http://www.example.com/dynamic-content

我想删除我的域名,只在使用[_url]时发送动态数据。

任何人都知道如何为此制作一个功能?

1 个答案:

答案 0 :(得分:0)

您可以使用wpcf7_form_tag()功能添加自定义表单标记。

使用它,您可以返回任何数据 - 或对数据进行任何更改 - 您喜欢。

在您的主题 functions.php

add_filter("wpcf7_form_tag", "so_37392974_cf7_url");

function so_37392974_cf7_url($form_tag){
  if($form_tag["name"] == "_custom_url"){
    $form_tag["values"][] = $_SERVER["REQUEST_URI"];
  }
  return $form_tag;
}

然后,当您将[_custom_url]标记添加到表单的电子邮件模板时,它会返回类似于/dynamic-content的内容。

我不确定您计划采用哪种不同的形式' dynamic_content'要采取的部分,但你可以使用任何PHP函数(如str_replace,substr等)来按下上面函数中的值,然后再返回它。