How to Globally Use wp_localize_script() Ajax URL
I have added this to my functions.php
and need to use ajaxURL
in all of enqueued scripts in the template (instead of enqueuing only one script here
add_action( 'wp_enqueue_scripts', 'ajaxify_enqueue_scripts' );
function ajaxify_enqueue_scripts() {
wp_localize_script( 'ajaxify', 'ajaxURL', array('ajax_url' => get_template_directory_uri() . '/app/login.php' ));
}
add_action( 'wp_ajax_nopriv_set_ajaxify', 'set_ajaxify' );
add_action( 'wp_ajax_set_ajaxify', 'set_ajaxify' );
but when I try to call an ajax method I am getting this error
Uncaught ReferenceError: ajaxURL is not defined
Is there any way to add the ajaxURL
to all scripts?
theme-development ajax wp-localize-script
add a comment |
I have added this to my functions.php
and need to use ajaxURL
in all of enqueued scripts in the template (instead of enqueuing only one script here
add_action( 'wp_enqueue_scripts', 'ajaxify_enqueue_scripts' );
function ajaxify_enqueue_scripts() {
wp_localize_script( 'ajaxify', 'ajaxURL', array('ajax_url' => get_template_directory_uri() . '/app/login.php' ));
}
add_action( 'wp_ajax_nopriv_set_ajaxify', 'set_ajaxify' );
add_action( 'wp_ajax_set_ajaxify', 'set_ajaxify' );
but when I try to call an ajax method I am getting this error
Uncaught ReferenceError: ajaxURL is not defined
Is there any way to add the ajaxURL
to all scripts?
theme-development ajax wp-localize-script
What action isajaxify_enqueue_scripts
hooked to?
– Milo
Nov 16 '18 at 4:40
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48
add a comment |
I have added this to my functions.php
and need to use ajaxURL
in all of enqueued scripts in the template (instead of enqueuing only one script here
add_action( 'wp_enqueue_scripts', 'ajaxify_enqueue_scripts' );
function ajaxify_enqueue_scripts() {
wp_localize_script( 'ajaxify', 'ajaxURL', array('ajax_url' => get_template_directory_uri() . '/app/login.php' ));
}
add_action( 'wp_ajax_nopriv_set_ajaxify', 'set_ajaxify' );
add_action( 'wp_ajax_set_ajaxify', 'set_ajaxify' );
but when I try to call an ajax method I am getting this error
Uncaught ReferenceError: ajaxURL is not defined
Is there any way to add the ajaxURL
to all scripts?
theme-development ajax wp-localize-script
I have added this to my functions.php
and need to use ajaxURL
in all of enqueued scripts in the template (instead of enqueuing only one script here
add_action( 'wp_enqueue_scripts', 'ajaxify_enqueue_scripts' );
function ajaxify_enqueue_scripts() {
wp_localize_script( 'ajaxify', 'ajaxURL', array('ajax_url' => get_template_directory_uri() . '/app/login.php' ));
}
add_action( 'wp_ajax_nopriv_set_ajaxify', 'set_ajaxify' );
add_action( 'wp_ajax_set_ajaxify', 'set_ajaxify' );
but when I try to call an ajax method I am getting this error
Uncaught ReferenceError: ajaxURL is not defined
Is there any way to add the ajaxURL
to all scripts?
theme-development ajax wp-localize-script
theme-development ajax wp-localize-script
edited Nov 16 '18 at 4:47
Behseini
asked Nov 16 '18 at 4:29
BehseiniBehseini
2801416
2801416
What action isajaxify_enqueue_scripts
hooked to?
– Milo
Nov 16 '18 at 4:40
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48
add a comment |
What action isajaxify_enqueue_scripts
hooked to?
– Milo
Nov 16 '18 at 4:40
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48
What action is
ajaxify_enqueue_scripts
hooked to?– Milo
Nov 16 '18 at 4:40
What action is
ajaxify_enqueue_scripts
hooked to?– Milo
Nov 16 '18 at 4:40
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to
'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to
'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48
add a comment |
2 Answers
2
active
oldest
votes
You can conditionally echo the code on only few templates or specific pages. Here is an example:
add_action ( 'wp_head', 'my_js_variables' );
function my_js_variables(){
// for specific page templates
$current_template = get_page_template();
// return if there is no page template, or if the page template is other than template-x1.php or template-x2.php
if( !isset($current_template) || ( $current_template != 'template-x1.php' && $current_template != 'template-x2.php' ) ){ return; } ?>
<script type="text/javascript">
var ajaxurl = <?php echo json_encode( admin_url( "admin-ajax.php" ) ); ?>;
var ajaxnonce = <?php echo json_encode( wp_create_nonce( "itr_ajax_nonce" ) ); ?>;
var myarray = <?php echo json_encode( array(
'foo' => 'bar',
'available' => TRUE,
'ship' => array( 1, 2, 3, ),
) ); ?>
</script>
<?php
}
add a comment |
To have the ajaxurl variable available on the frontend the easiest way is to add this snippet to you theme’s function.php file:
add_action('wp_head', 'myplugin_ajaxurl');
function myplugin_ajaxurl() {
echo '<script type="text/javascript">
var ajaxurl = "' . admin_url('admin-ajax.php') . '";
</script>';
}
This get the url of the ajax submission page and creates a variable in the head of the HTML with it. Now ‘ajaxurl’ is available in your theme so you can start making it more modern and dynamic.
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos usingvar ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage ofnonce
here?
– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "110"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fwordpress.stackexchange.com%2fquestions%2f319373%2fhow-to-globally-use-wp-localize-script-ajax-url%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can conditionally echo the code on only few templates or specific pages. Here is an example:
add_action ( 'wp_head', 'my_js_variables' );
function my_js_variables(){
// for specific page templates
$current_template = get_page_template();
// return if there is no page template, or if the page template is other than template-x1.php or template-x2.php
if( !isset($current_template) || ( $current_template != 'template-x1.php' && $current_template != 'template-x2.php' ) ){ return; } ?>
<script type="text/javascript">
var ajaxurl = <?php echo json_encode( admin_url( "admin-ajax.php" ) ); ?>;
var ajaxnonce = <?php echo json_encode( wp_create_nonce( "itr_ajax_nonce" ) ); ?>;
var myarray = <?php echo json_encode( array(
'foo' => 'bar',
'available' => TRUE,
'ship' => array( 1, 2, 3, ),
) ); ?>
</script>
<?php
}
add a comment |
You can conditionally echo the code on only few templates or specific pages. Here is an example:
add_action ( 'wp_head', 'my_js_variables' );
function my_js_variables(){
// for specific page templates
$current_template = get_page_template();
// return if there is no page template, or if the page template is other than template-x1.php or template-x2.php
if( !isset($current_template) || ( $current_template != 'template-x1.php' && $current_template != 'template-x2.php' ) ){ return; } ?>
<script type="text/javascript">
var ajaxurl = <?php echo json_encode( admin_url( "admin-ajax.php" ) ); ?>;
var ajaxnonce = <?php echo json_encode( wp_create_nonce( "itr_ajax_nonce" ) ); ?>;
var myarray = <?php echo json_encode( array(
'foo' => 'bar',
'available' => TRUE,
'ship' => array( 1, 2, 3, ),
) ); ?>
</script>
<?php
}
add a comment |
You can conditionally echo the code on only few templates or specific pages. Here is an example:
add_action ( 'wp_head', 'my_js_variables' );
function my_js_variables(){
// for specific page templates
$current_template = get_page_template();
// return if there is no page template, or if the page template is other than template-x1.php or template-x2.php
if( !isset($current_template) || ( $current_template != 'template-x1.php' && $current_template != 'template-x2.php' ) ){ return; } ?>
<script type="text/javascript">
var ajaxurl = <?php echo json_encode( admin_url( "admin-ajax.php" ) ); ?>;
var ajaxnonce = <?php echo json_encode( wp_create_nonce( "itr_ajax_nonce" ) ); ?>;
var myarray = <?php echo json_encode( array(
'foo' => 'bar',
'available' => TRUE,
'ship' => array( 1, 2, 3, ),
) ); ?>
</script>
<?php
}
You can conditionally echo the code on only few templates or specific pages. Here is an example:
add_action ( 'wp_head', 'my_js_variables' );
function my_js_variables(){
// for specific page templates
$current_template = get_page_template();
// return if there is no page template, or if the page template is other than template-x1.php or template-x2.php
if( !isset($current_template) || ( $current_template != 'template-x1.php' && $current_template != 'template-x2.php' ) ){ return; } ?>
<script type="text/javascript">
var ajaxurl = <?php echo json_encode( admin_url( "admin-ajax.php" ) ); ?>;
var ajaxnonce = <?php echo json_encode( wp_create_nonce( "itr_ajax_nonce" ) ); ?>;
var myarray = <?php echo json_encode( array(
'foo' => 'bar',
'available' => TRUE,
'ship' => array( 1, 2, 3, ),
) ); ?>
</script>
<?php
}
edited Nov 16 '18 at 9:58
grgarside
1053
1053
answered Nov 16 '18 at 5:54
vikrant zilpevikrant zilpe
43818
43818
add a comment |
add a comment |
To have the ajaxurl variable available on the frontend the easiest way is to add this snippet to you theme’s function.php file:
add_action('wp_head', 'myplugin_ajaxurl');
function myplugin_ajaxurl() {
echo '<script type="text/javascript">
var ajaxurl = "' . admin_url('admin-ajax.php') . '";
</script>';
}
This get the url of the ajax submission page and creates a variable in the head of the HTML with it. Now ‘ajaxurl’ is available in your theme so you can start making it more modern and dynamic.
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos usingvar ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage ofnonce
here?
– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
add a comment |
To have the ajaxurl variable available on the frontend the easiest way is to add this snippet to you theme’s function.php file:
add_action('wp_head', 'myplugin_ajaxurl');
function myplugin_ajaxurl() {
echo '<script type="text/javascript">
var ajaxurl = "' . admin_url('admin-ajax.php') . '";
</script>';
}
This get the url of the ajax submission page and creates a variable in the head of the HTML with it. Now ‘ajaxurl’ is available in your theme so you can start making it more modern and dynamic.
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos usingvar ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage ofnonce
here?
– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
add a comment |
To have the ajaxurl variable available on the frontend the easiest way is to add this snippet to you theme’s function.php file:
add_action('wp_head', 'myplugin_ajaxurl');
function myplugin_ajaxurl() {
echo '<script type="text/javascript">
var ajaxurl = "' . admin_url('admin-ajax.php') . '";
</script>';
}
This get the url of the ajax submission page and creates a variable in the head of the HTML with it. Now ‘ajaxurl’ is available in your theme so you can start making it more modern and dynamic.
To have the ajaxurl variable available on the frontend the easiest way is to add this snippet to you theme’s function.php file:
add_action('wp_head', 'myplugin_ajaxurl');
function myplugin_ajaxurl() {
echo '<script type="text/javascript">
var ajaxurl = "' . admin_url('admin-ajax.php') . '";
</script>';
}
This get the url of the ajax submission page and creates a variable in the head of the HTML with it. Now ‘ajaxurl’ is available in your theme so you can start making it more modern and dynamic.
edited Nov 16 '18 at 9:05
grgarside
1053
1053
answered Nov 16 '18 at 4:39
vikrant zilpevikrant zilpe
43818
43818
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos usingvar ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage ofnonce
here?
– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
add a comment |
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos usingvar ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage ofnonce
here?
– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos using
var ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage of nonce
here?– Behseini
Nov 16 '18 at 4:44
Thanks a lots vikrant but I have two questions now, 1- is there any way to add this to specific head instead of all head? 2- I have seen some example at this methos using
var ajaxnonce = '<?php echo wp_create_nonce( "itr_ajax_nonce" ); ?>';
can you please let me know what is the usage of nonce
here?– Behseini
Nov 16 '18 at 4:44
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
i send some example please check . This code help for you .
– vikrant zilpe
Nov 16 '18 at 5:55
add a comment |
Thanks for contributing an answer to WordPress Development Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fwordpress.stackexchange.com%2fquestions%2f319373%2fhow-to-globally-use-wp-localize-script-ajax-url%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What action is
ajaxify_enqueue_scripts
hooked to?– Milo
Nov 16 '18 at 4:40
Hi Milo sorry I just updated the code (forget to add the action). As you can see it is hooked to
'wp_enqueue_scripts'
– Behseini
Nov 16 '18 at 4:48