I would like to run a javascript function when jQuery is ready. This doesn't work:
wp_enqueue_script('jquery');
?>
<script>
(function() {
doJQstuff()
})();
</script>
Any ideas?
wp_localize_script( 'search-ajax', 'search_ajax_object',
array(
'url' => admin_url( 'admin-ajax.php' ),
)
);
wp_enqueue_script( 'search-ajax', get_template_directory_uri() . '/js/search-ajax.js', array('jquery'), null, true );
search-ajax.js
console.log(search_ajax_object) //-> Uncaught ReferenceError: search_ajax_object is not defined
I would like to run a javascript function when jQuery is ready. This doesn't work:
wp_enqueue_script('jquery');
?>
<script>
(function() {
doJQstuff()
})();
</script>
Any ideas?
wp_localize_script( 'search-ajax', 'search_ajax_object',
array(
'url' => admin_url( 'admin-ajax.php' ),
)
);
wp_enqueue_script( 'search-ajax', get_template_directory_uri() . '/js/search-ajax.js', array('jquery'), null, true );
search-ajax.js
console.log(search_ajax_object) //-> Uncaught ReferenceError: search_ajax_object is not defined
Share
Improve this question
edited Jan 27, 2022 at 14:03
Fluxian
asked Jan 27, 2022 at 12:27
FluxianFluxian
1809 bronze badges
7
|
Show 2 more comments
1 Answer
Reset to default 1You can't do that way
first you need to enqueue your script using :
wp_enqueue_script('jquery');
wp_enqueue_script('ns-likes-dislikes-for-posts-js', plugin_dir_url(__FILE__). 'path/to/your/js/file/from/plugin/directory/custom.js', array('jquery'), '1.0', true);
in custom js start writing your js with jquery but you can't use $
, instead use jQuery
.
if you want to use $
instead of jQuery
try this code:
(function($){
// enjoy jquery with $('selector')
})(jQuery)
first you need to enqueue script then you can localize it.
wp_enqueue_script( 'search-ajax', get_template_directory_uri() . '/js/search-ajax.js', array('jquery'), null, true );
wp_localize_script( 'search-ajax', 'search_ajax_object',
array(
'url' => admin_url( 'admin-ajax.php' ),
)
);
wp_enqueue_script()
as well, not output it directly in the template. Have you tried that? – kero Commented Jan 27, 2022 at 12:44wp_localize_script()
to pass data from PHP to JS or query the REST/ajax endpoints from JS. – kero Commented Jan 27, 2022 at 13:05