Skip to content

Instantly share code, notes, and snippets.

Easy Passthrough allows for entry data to be transferred across multiple sessions using the special Easy Passthrough token. This token is a secret key, unique to each entry, preventing random users from guessing at the token and passing through entries they should not have access to.

Easy Passthrough token links can be added to both form confirmations and notifications.

Adding an Easy Passthrough Token

  1. Go to the Confirmation or Notification you want to add the token to.
  2. Add the ep_token={Easy Passthrough Token} query parameter to your link.

For example, if your original link is https://example.com/getting-started/, your link with the query parameter should be https://example.com/getting-started/?ep_token={Easy Passthrough Token}. The {Easy Passthrough Token} merge tag will automatically be replaced with the token unique to that entry.

To generate a PDF when a form is submitted, you need to create a Fillable PDFs feed. This feed tells Fillable PDFs what to do with the submitted form entry to generate the PDF.

Creating a Fillable PDFs Feed

  1. Go to the Form Settings page on the form you want to generate a PDF for and click on the Fillable PDFs tab.
  2. Click the Add New button to create a new Fillable PDFs feed.

Configuring Feeds

General
<?php
add_filter( 'fg_easypassthrough_populate_same_form', '__return_false' );
<?php
add_filter( 'fg_entryautomation_export_email_message', 'add_payment_summary', 10, 4 );
function add_payment_summary( $message, $settings, $form, $file_name ) {
// Get search criteria.
$search_criteria = fg_entryautomation()->get_search_criteria( $settings, $form );
// Get entries for search criteria.
<?php
add_filter( 'fg_entryautomation_export_email_subject', 'subject_date_range', 10, 4 );
function subject_date_range( $subject, $settings, $form, $file_name ) {
// Get search criteria.
$search_criteria = fg_entryautomation()->get_search_criteria( $settings, $form );
// Add date range to subject.
<?php
add_filter( 'fg_entryautomation_maximum_attachment_size', 'increase_attachment_size', 10, 4 );
function increase_attachment_size( $maximum_file_size, $settings, $form, $file_name ) {
return 10485760;
}
<?php
add_filter( 'fg_entryautomation_search_criteria', 'only_automate_failed_payments', 10, 3 );
function only_automate_failed_payments( $search_criteria, $feed, $form ) {
$search_criteria['field_filters'][] = array( 'key' => 'payment_status', 'value' => 'Failed' );
return $search_criteria;
<?php
add_filter( 'fg_fillable_pdf_args', 'add_list_field_to_pdf', 10, 4 );
function add_list_field_to_pdf( $pdf_meta, $feed, $entry, $form ) {
// Prepare column names for each day of the week.
$column_names = array(
'Sunday %d',
'Monday %d',
<?php
add_filter( 'fg_easypassthrough_field_values', 'fg_bypass_passthrough', 10, 2 );
function fg_bypass_passthrough( $field_values = array(), $form_id = 0 ) {
// If passthrough=0 is in the query parameters, return an empty array.
if ( '0' == rgget( 'passthrough' ) ) {
return array();
}
<?php
add_action( 'fg_entryautomation_after_export', 'fg_entryautomation_remove_header_row', 10, 3 );
/**
* Remove header line from generated CSV export file.
*
* @param array $task The current Entry Automation task's settings.
* @param array $form The current Form object.
* @param string $file_path File path of export file.