事件管理器:创建用于电子邮件通知的自定义占位符

时间:2019-11-01 作者:Daniel

我在Wordpress中为插件事件管理器编写了一个函数(子主题;functions.php)。此函数用于从自定义输入字段中读取值,并将这些值保存在数据库中。

我想写一个自定义占位符,以便将其放置在电子邮件通知中。

功能是:

function em_save_custom_event_fields() {
    global $EM_Booking;
    if(!empty($_REQUEST[\'user_motorcycle\'])) {
        $EM_Booking->booking_meta[\'registration\'][\'user_motorcycle\'] = wp_kses($_Request[\'user_motorcycle\'], array());
    }
}
add_filter(\'em_booking_add, em_save_custom_event_fields\');
对于电子邮件通知,我想在模板中添加一个名为#\\u USERMOTORCYCLE的新占位符,该占位符实际上用用户提供的值替换占位符,并存储在:

$EM_Booking->booking_meta[\'registration\'][\'user_motorcycle\']
我在网上搜索了一些示例,但作为新手,我无法将它们应用到我的需求中。

Create a Custom Placeholder for Event Formatting

Show specific database value in notification email

1 个回复
SO网友:iDemian

目前正在努力解决同一问题。占位符似乎分散在插件文件的各个地方,这使得它很难复制。

编辑:好吧,似乎有一个更简单的方法,尽管我相信你可能需要继续寻找更好的方法。转到events manager/classes文件夹,打开em booking。php。在输出函数中,您可以添加自己的占位符。大致如下:

     case \'#_USERMOTORCYCLE\':
                $replace = $this->get_person()->user_motorcycle;
                break;
现在应该这样做了。