我參考了一些在線和修改的functions.php示例和前端模板來觸發ajax調用來獲取一些數據。但我很難理解鋤頭的數據是從請求的url返回的。Ajax調用不在wordpress中工作
在functions.php的結束,我補充說,
wp_enqueue_script('jquery');
function myFunction(){
echo "hi";
die();
}
add_action('wp_ajax_myFunction', 'myFunction');
add_action('wp_ajax_nopriv_myFunction', 'myFunction');
在我的自定義模板頁,我說,
var datavalue = 'test data string';
jQuery.ajax({
url: "/wp-admin/admin-ajax.php",
method: "GET",
data: { 'datavar' : datavalue }
}).success(function(data) {
console.log("successfully run ajax request..." + data);
}).done(function(){
console.log("I am from done function");
}).fail(function(){
console.log("I am from fail function.");
}).always(function(){
console.log("I am from always function");
});
});
它運行後,我得到這些答覆。
I am from fail function.
I am from always function
我不明白如何從特定網址獲取數據並在ajax的成功函數中顯示結果。
我甚至不知道函數function.php中定義的函數是如何被這個ajax調用調用的?他們有什麼關係?
請解釋。另外我想通過傳遞關鍵字來激發ajax調用來查詢數據庫,我怎麼在wordpress中做到這一點?
檢查您的網絡選項卡,查看AJAX請求的結果,找出請求失敗的原因。無論WordPress中的操作是否正確定義,請求都應該成功。請求是否到達正確的位置? JavaScript代碼是否包含錯誤? – josephting
該請求是對指定的網址進行的,但出現錯誤500. – 112233
你走了。請找出爲什麼服務器返回錯誤。沒有錯誤消息/日誌,它只會是一個猜謎遊戲。 – josephting