I have a shortcode [gf_popup pause="1000" location="bottom"]
and the location attribute keeps coming back as Uncaught ReferenceError: bottom is not defined
. Any thoughts on why? Here is the main part of the code:
function gfpu_shortcode($atts = [], $content = null, $tags = '')
{
// normalize attribute keys, lowercase
$atts = array_change_key_case((array)$atts, CASE_LOWER);
// override default attributes with user attributes
$gfpu_atts = shortcode_atts([
'pause' => 5000,
'location' => 'false',
'popTrigger' => 'false',
], $atts, $tag);
$timer = esc_html__($gfpu_atts['pause'], 'gf_popup');
$location = esc_html__($gfpu_atts['location'], 'gf_popup');
$popTrigger = esc_html__($gfpu_atts['popTrigger'], 'gf_popup');
}
add_shortcode('gf_popup', 'gfpu_shortcode');
Any thoughts?
I have a shortcode [gf_popup pause="1000" location="bottom"]
and the location attribute keeps coming back as Uncaught ReferenceError: bottom is not defined
. Any thoughts on why? Here is the main part of the code:
function gfpu_shortcode($atts = [], $content = null, $tags = '')
{
// normalize attribute keys, lowercase
$atts = array_change_key_case((array)$atts, CASE_LOWER);
// override default attributes with user attributes
$gfpu_atts = shortcode_atts([
'pause' => 5000,
'location' => 'false',
'popTrigger' => 'false',
], $atts, $tag);
$timer = esc_html__($gfpu_atts['pause'], 'gf_popup');
$location = esc_html__($gfpu_atts['location'], 'gf_popup');
$popTrigger = esc_html__($gfpu_atts['popTrigger'], 'gf_popup');
}
add_shortcode('gf_popup', 'gfpu_shortcode');
Any thoughts?
Share Improve this question asked Jun 23, 2019 at 19:18 ParkbumParkbum 231 silver badge3 bronze badges 2 |1 Answer
Reset to default 0If you look at the defaults for location
and popTrigger
they have single quotes around them...
Assuming this is correct you need to add these around the new location value, so it does not think bottom
is an (undefined) javascript variable, but rather a string value, via providing 'bottom'
...
Or if you don't want to modify code to add the single quotes, you could also just do: [gf_popup pause="1000" location="'bottom'"]
to pass the single quotes in via the shortcode attribute.
Uncaught ReferenceError
is a JavaScript error. Is there any JavaScript associated with this shortcode? – Jacob Peattie Commented Jun 24, 2019 at 0:59