Wordpress AJAX How to Implement Server Side Response
I'm attempting to implement an AJAX request and response all within one wordpress page. My request is getting a response containing the page's html contents, and not the data that my response function is supposed to output. Do I need to enqueue the response script from a separate file?
b.on("click", function(){
var data =
data = retrieve_hst()
console.log(data)
jQuery.ajax({
type: "POST",
url: "./wp-admin/admin-ajax.php",
data: { action: "recordData", hst_data: data }
}).done(function(response) {
alert (response);
});
<?php
add_action('wp_ajax_recordData', 'recordData' );
add_action('wp_ajax_nopriv_wps_recordData', 'recordData' );
function recordData() {
$data = $_POST['hst_data'];
echo $data;
die();
}
?>
})
javascript php jquery ajax wordpress
add a comment |
I'm attempting to implement an AJAX request and response all within one wordpress page. My request is getting a response containing the page's html contents, and not the data that my response function is supposed to output. Do I need to enqueue the response script from a separate file?
b.on("click", function(){
var data =
data = retrieve_hst()
console.log(data)
jQuery.ajax({
type: "POST",
url: "./wp-admin/admin-ajax.php",
data: { action: "recordData", hst_data: data }
}).done(function(response) {
alert (response);
});
<?php
add_action('wp_ajax_recordData', 'recordData' );
add_action('wp_ajax_nopriv_wps_recordData', 'recordData' );
function recordData() {
$data = $_POST['hst_data'];
echo $data;
die();
}
?>
})
javascript php jquery ajax wordpress
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
Youradd_action
hooks should be placed inside your theme'sfunctions.php
file (or in a standalone plugin).
– cabrerahector
Nov 22 at 21:06
The ajax request isn't actually calling your page, it's calling./wp-admin/admin-ajax.php
. I would also recommend removing the initial.
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).
– Magnus Eriksson
Nov 22 at 21:07
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17
add a comment |
I'm attempting to implement an AJAX request and response all within one wordpress page. My request is getting a response containing the page's html contents, and not the data that my response function is supposed to output. Do I need to enqueue the response script from a separate file?
b.on("click", function(){
var data =
data = retrieve_hst()
console.log(data)
jQuery.ajax({
type: "POST",
url: "./wp-admin/admin-ajax.php",
data: { action: "recordData", hst_data: data }
}).done(function(response) {
alert (response);
});
<?php
add_action('wp_ajax_recordData', 'recordData' );
add_action('wp_ajax_nopriv_wps_recordData', 'recordData' );
function recordData() {
$data = $_POST['hst_data'];
echo $data;
die();
}
?>
})
javascript php jquery ajax wordpress
I'm attempting to implement an AJAX request and response all within one wordpress page. My request is getting a response containing the page's html contents, and not the data that my response function is supposed to output. Do I need to enqueue the response script from a separate file?
b.on("click", function(){
var data =
data = retrieve_hst()
console.log(data)
jQuery.ajax({
type: "POST",
url: "./wp-admin/admin-ajax.php",
data: { action: "recordData", hst_data: data }
}).done(function(response) {
alert (response);
});
<?php
add_action('wp_ajax_recordData', 'recordData' );
add_action('wp_ajax_nopriv_wps_recordData', 'recordData' );
function recordData() {
$data = $_POST['hst_data'];
echo $data;
die();
}
?>
})
javascript php jquery ajax wordpress
javascript php jquery ajax wordpress
asked Nov 22 at 20:45
RJ Stank
111
111
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
Youradd_action
hooks should be placed inside your theme'sfunctions.php
file (or in a standalone plugin).
– cabrerahector
Nov 22 at 21:06
The ajax request isn't actually calling your page, it's calling./wp-admin/admin-ajax.php
. I would also recommend removing the initial.
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).
– Magnus Eriksson
Nov 22 at 21:07
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17
add a comment |
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
Youradd_action
hooks should be placed inside your theme'sfunctions.php
file (or in a standalone plugin).
– cabrerahector
Nov 22 at 21:06
The ajax request isn't actually calling your page, it's calling./wp-admin/admin-ajax.php
. I would also recommend removing the initial.
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).
– Magnus Eriksson
Nov 22 at 21:07
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
Your
add_action
hooks should be placed inside your theme's functions.php
file (or in a standalone plugin).– cabrerahector
Nov 22 at 21:06
Your
add_action
hooks should be placed inside your theme's functions.php
file (or in a standalone plugin).– cabrerahector
Nov 22 at 21:06
The ajax request isn't actually calling your page, it's calling
./wp-admin/admin-ajax.php
. I would also recommend removing the initial .
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).– Magnus Eriksson
Nov 22 at 21:07
The ajax request isn't actually calling your page, it's calling
./wp-admin/admin-ajax.php
. I would also recommend removing the initial .
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).– Magnus Eriksson
Nov 22 at 21:07
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17
add a comment |
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
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: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
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%2fstackoverflow.com%2fquestions%2f53437795%2fwordpress-ajax-how-to-implement-server-side-response%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- 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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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%2fstackoverflow.com%2fquestions%2f53437795%2fwordpress-ajax-how-to-implement-server-side-response%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
Where is that PHP code located? It should go in your functions file, or some file that gets included on all pages, before any output at all.
– Magnus Eriksson
Nov 22 at 20:48
I have this code written directly into one of my pages. I tried placing the server side php script into functions.php but it didn't seem to make a difference.
– RJ Stank
Nov 22 at 21:04
Your
add_action
hooks should be placed inside your theme'sfunctions.php
file (or in a standalone plugin).– cabrerahector
Nov 22 at 21:06
The ajax request isn't actually calling your page, it's calling
./wp-admin/admin-ajax.php
. I would also recommend removing the initial.
from the path. It should work from the functions.php-file. If it doesn't then there's something else wrong (which we can't see here).– Magnus Eriksson
Nov 22 at 21:07
Thank you Magnus and Hector. I removed the initial dot from the path and put the action hooks into the functions.php file and it's working now. That was helpful, most of the tutorials I found online don't mention placing those in functions.php.
– RJ Stank
Nov 22 at 21:17