【问题标题】:How do I create a custom Gravity Forms Merge Tag to display entry date and time?如何创建自定义 Gravity Forms 合并标签以显示条目日期和时间?
【发布时间】:2012-10-15 04:26:15
【问题描述】:

我几乎想通了,但由于缺乏 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;
}
?>

有什么帮助吗?

【问题讨论】:

    标签: php forms gravity


    【解决方案1】:

    这是一个两步过程。您首先创建合并标签,然后在某些时候,您必须用正确的数据替换合并标签。我看不出原因,为什么您需要在这部分代码中使用 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;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-02
      • 1970-01-01
      • 2017-07-26
      • 1970-01-01
      • 2013-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多