无法修改导出重力表单时创建的日期date_created
场实际上并不是一个受那个钩子影响的场。如果你进去看看/exports.php
你会发现start_export()
他们绕过ID的过滤器date_created
和payment_date
硬代码强制使用Y-m-d H:i:s
foreach ( $leads as $lead ) {
GFCommon::log_debug( __METHOD__ . \'(): Processing entry #\' . $lead[\'id\'] );
foreach ( $fields as $field_id ) {
switch ( $field_id ) {
case \'date_created\' :
case \'payment_date\' :
$value = $lead[ $field_id ];
if ( $value ) {
$lead_gmt_time = mysql2date( \'G\', $value );
$lead_local_time = GFCommon::get_local_timestamp( $lead_gmt_time );
$value = date_i18n( \'Y-m-d H:i:s\', $lead_local_time, true );
}
break;
default :
$field = RGFormsModel::get_field( $form, $field_id );
$value = is_object( $field ) ? $field->get_value_export( $lead, $field_id, false, true ) : rgar( $lead, $field_id );
$value = apply_filters( \'gform_export_field_value\', $value, $form_id, $field_id, $lead );
...
相反,您可以在表单中创建一个自定义字段,将其设为隐藏字段,然后使用另一个
gform_pre_submission
钩子来填充提交时的服务器时间。
作为GravityForms客户,their support is superior, 也许他们有更好的手段。他们也很乐于接受建议——打开一张罚单作为建议,为该日期格式添加一个挂钩,可能值得一试。