我使用elementor pro表单作为联系人表单。我想在邮件中添加submission_id。我想在引用标题和邮件正文中显示id。就像ticket-System一样。
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添加到邮件中吗?
我尝试了不同的插件,但我不想支付插件,只是为了得到身份证。
我也试着在FunctionIdephp中添加我自己的短代码,但是我没有给予回一个值。
更新:似乎这部分不起作用
if ( ! isset( $_POST['form_id'] ) || ! isset( $_POST['_wpnonce'] ) ) {
return 'Error 01';
}
1条答案
按热度按时间6yt4nkrj1#
我遇到了同样的问题。我用最简单的方法解决了它。我的唯一ID是日期和时间的代码。我在表单中添加了一个隐藏的文本字段。然后在高级选项卡中我选择了动态数据、页面、当前时间。您可以设置任何日期/时间格式沿着任何字符/单词...