3

我几乎想通了,但由于缺乏 PHP 知识而卡住了;基本上我需要一个自定义重力表单合并标签来显示“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;
}
?>

有什么帮助吗?

4

1 回答 1

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;
}
于 2012-10-25T20:12:18.240 回答