/** * Get description * * @see Pronamic_Pay_PaymentDataInterface::get_description() * @return string */ public function get_description() { // Description template $description_template = $this->action->post_content['pronamic_pay_transaction_description']; // Find shortcode // @see https://github.com/wp-premium/formidable/blob/2.0.22/classes/helpers/FrmFieldsHelper.php#L684-L696 $shortcodes = FrmFieldsHelper::get_shortcodes($description_template, $this->form_id); // Replace shortcodes // @see https://github.com/wp-premium/formidable/blob/2.0.22/classes/helpers/FrmFieldsHelper.php#L715-L821 $description = FrmFieldsHelper::replace_content_shortcodes($description_template, $this->entry, $shortcodes); // Check if there was a replacement to make sure the description has a dynamic part if ($description_template === $description) { $description .= $this->entry_id; } return $description; }
public static function replace_content_shortcodes($content, $entry, $shortcodes) { return FrmFieldsHelper::replace_content_shortcodes($content, $entry, $shortcodes); }
public static function replace_shortcodes($content, $entry, $shortcodes, $display = false, $show = 'one', $odd = '', $args = array()) { global $post; if ($display) { $param_value = $display->frm_type == 'id' ? $entry->id : $entry->item_key; if ($entry->post_id) { $args['detail_link'] = get_permalink($entry->post_id); } else { $param = isset($display->frm_param) && !empty($display->frm_param) ? $display->frm_param : 'entry'; if ($post) { $args['detail_link'] = esc_url_raw(add_query_arg($param, $param_value, get_permalink($post->ID))); } else { $args['detail_link'] = esc_url_raw(add_query_arg($param, $param_value)); } //if( FrmProAppHelper::rewriting_on() && $frmpro_settings->permalinks ) // $args['detail_link'] = get_permalink($post->ID) .$param_value .'/'; } } $args['odd'] = $odd; $args['show'] = $show; foreach ($shortcodes[0] as $short_key => $tag) { self::replace_single_shortcode($shortcodes, $short_key, $tag, $entry, $display, $args, $content); } if (empty($shortcodes[0])) { return $content; } return FrmFieldsHelper::replace_content_shortcodes($content, $entry, $shortcodes); }