如何创建自定义Gravity Forms Merge标记以显示输入日期和时间?

时间:2012-10-15 04:26:16

标签: php forms gravity

我几乎已经弄明白但由于缺乏PHP知识而陷入困境;基本上我需要一个自定义Gravity Forms合并标签来显示“date_created”条目对象,因为它具有表单提交的日期和时间。它应该看起来像这样,但这是错误的:

<?php
add_filter('gform_custom_merge_tags', 'custom_merge_tags', 10, 4);
function custom_merge_tags($merge_tags, $form_id, $fields, $element_id) {

    if($entry["date_created"]($form_id))
        $merge_tags[] = array('label' => 'Date Created', 'tag' => '{date_created}');

    return $merge_tags;
}
?>

任何帮助?

1 个答案:

答案 0 :(得分:2)

这是一个两步过程。首先创建合并标记,然后在某些时候,您必须用正确的数据替换合并标记。我无法找到原因,为什么在代码的这一部分需要if($entry["date_created"]行。

然后,您将需要创建另一个替换合并代码的函数。

add_filter('gform_replace_merge_tags', 'replace_gf_date', 10, 7);
function replace_gf_date($text, $form, $entry, $url_encode, $esc_html, $nl2br, $format) {

$custom_merge_tag = '{date_created}';

if(strpos($text, $custom_merge_tag) === false)
    return $text;

$gf_date_created = ($entry[date_created"]($formID)) 
    //Not sure of exact syntax above.
$text = str_replace($custom_merge_tag, $gf_date_created, $text);

return $text;
}