Skip to content

Instantly share code, notes, and snippets.

@eriteric
Last active December 27, 2024 20:31
Show Gist options
  • Save eriteric/5d6ca5969a662339c4b3 to your computer and use it in GitHub Desktop.
Save eriteric/5d6ca5969a662339c4b3 to your computer and use it in GitHub Desktop.
Load gravity forms JS in footer
// GF method: http://www.gravityhelp.com/documentation/gravity-forms/extending-gravity-forms/hooks/filters/gform_init_scripts_footer/
add_filter( 'gform_init_scripts_footer', '__return_true' );
// solution to move remaining JS from https://bjornjohansen.no/load-gravity-forms-js-in-footer
add_filter( 'gform_cdata_open', 'wrap_gform_cdata_open' );
function wrap_gform_cdata_open( $content = '' ) {
$content = 'document.addEventListener( "DOMContentLoaded", function() { ';
return $content;
}
add_filter( 'gform_cdata_close', 'wrap_gform_cdata_close' );
function wrap_gform_cdata_close( $content = '' ) {
$content = ' }, false );';
return $content;
}
@JoryHogeveen
Copy link

@shireefkhatab
My guess is that something in your installation is preventing jQuery from being loaded at all.
In any case, the snipping needs to be placed (as a whole) in your theme functions.php or in a custom plugin. It would also work as a must-use plugin.

@eriteric
Copy link
Author

eriteric commented May 7, 2020

Thanks @JoryHogeveen for your contributions.

@danlapteacru
Copy link

Hey guys, this not works anymore with GF 2.5, also from GF 2.5 scripts are by default in footer.

@jesserosenfield
Copy link

jesserosenfield commented May 11, 2021

This breaks for me when using conditional logic

Uncaught ReferenceError: gf_global is not defined

Error is thrown from this line:

gf_global["number_formats"][5] = {"1":{"price":false,"value":false},"2":{"price":false,"value":false},"3":{"price":false,"value":false},"4":{"price":false,"value":false},"13":{"price":false,"value":false},"12":{"price":false,"value":false},"6":{"price":false,"value":false},"7":{"price":false,"value":false},"8":{"price":false,"value":false},"10":{"price":false,"value":false}};if(window['jQuery']){if(!window['gf_form_conditional_logic'])window['gf_form_conditional_logic'] = new Array();window['gf_form_conditional_logic'][5] = { logic: { 10: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"1","operator":"is","value":"River Club Apartments"}]},

@TeemuSuoranta
Copy link

From GF 2.5 this breaks the forms (that have coniditional logic). See https://community.gravityforms.com/t/gf-2-5-7-5-is-broken/10323/8

I'd advice not using this any more and removing it anywhere where it is added.

@JoryHogeveen
Copy link

Correct, this code is redundant since GF 2.5+

@BadScooter1980
Copy link

I know this is old, but I'm struggling with GF placing the js in the header. Not only that, but it's moving my enqueued jQuery back into the header, too. Any ideas?

@JoryHogeveen
Copy link

Hi @BadScooter1980
This is old, redundant and therefore deprecated code, please do not use anymore in newer GF versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment