Created
March 9, 2016 03:38
-
-
Save travislopes/541227a30675c6377f21 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Gets Gravity Forms via form title. | |
* | |
* @access public | |
* @param string $title (default: null) - Form title to search for | |
* @param bool $return_form (default: false) - Return form object or form ID | |
* @return array - Array of form IDs or form objects (based on $return_form value) | |
*/ | |
function get_gform_by_title( $title = null, $return_form = false ) { | |
global $wpdb; | |
// If GFForms isn't initialized, return array. | |
if ( ! class_exists( 'GFFormsModel' ) || ! class_exists( 'GFAPI' ) ) { | |
return array(); | |
} | |
// Get forms table name. | |
$forms_table = GFFormsModel::get_form_table_name(); | |
// Get form IDs. | |
$title = sanitize_text_field( $title ); | |
$form_ids = $wpdb->get_col( "SELECT id FROM {$forms_table} WHERE `title` LIKE '%{$title}%';" ); | |
// If we're not retuning form objects, return the form IDs. | |
if ( ! $return_form ) { | |
return $form_ids; | |
} | |
// Prepare array to store forms. | |
$forms = array(); | |
// Get forms. | |
if ( ! empty( $form_ids ) ) { | |
foreach( $form_ids as $form_id ) { | |
$forms[] = GFAPI::get_form( $form_id ); | |
} | |
} | |
// Return forms. | |
return $forms; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment