需要获取elementor表单的submission_id来添加邮件的参考和内容

问题描述 投票:0回答:2

我使用 elementor pro 表单作为我的联系表单。我想将submission_id 添加到邮件中。我想在参考标头和邮件正文中显示 ID。就像票务系统一样。

EXP:来自 xxx 的新邮件 - ID:4566334

我尝试使用以下代码添加一个新的短代码,该短代码返回submission_id,但不起作用。为空且没有值:

add_shortcode( 'submission_id', 'get_submission_id' );

function get_submission_id() {
  if ( ! isset( $_POST['form_id'] ) || ! isset( $_POST['_wpnonce'] ) ) {
    return '';
  }

  $form_id = intval( $_POST['form_id'] );
  $nonce_value = sanitize_text_field( $_POST['_wpnonce'] );

  if ( ! wp_verify_nonce( $nonce_value, 'elementor-pro-form-' . $form_id ) ) {
    return '';
  }

  $submission_data = ElementorPro\Modules\Forms\Classes\Form::get_instance( $form_id )->get_submission_data();
  if ( ! $submission_data || ! isset( $submission_data['_id'] ) ) {
    return '';
  }

  return $submission_data['_id'];
}

还有其他方法可以将 elementor 表单中的提交 ID 添加到邮件中吗?

我尝试了不同的插件,但我不想付费购买插件,只是为了获取 id。

还尝试在 function.php 中添加我自己的短代码,但我没有返回值。

更新:这部分似乎不起作用

if ( ! isset( $_POST['form_id'] ) || ! isset( $_POST['_wpnonce'] ) ) {
    return 'Error 01';
  }
wordpress elementor submission
2个回答
1
投票

我的唯一 ID 是日期和时间的代码。我向表单添加了一个隐藏文本字段,然后在高级选项卡中选择了动态数据、页面、当前时间。 您可以设置任何日期/时间格式以及任何字符/单词等..


-1
投票

你找到解决办法了吗?我也被这个问题困扰了

© www.soinside.com 2019 - 2024. All rights reserved.