所以我正在尝试制作一个表单来验证一个url是否存在动态存在并且我遇到了Wordpress的问题ajax调用总是返回0.我现在已经研究了大约3个小时这个似乎没有什么对我有用,这可能是一个愚蠢的问题。以下是我到目前为止所做的事情:
我有一个按钮:
<input id="analyze"type="button" class="analyze-button" value="Analyze">
我正在尝试在其上运行此脚本(位于另一个文件中):
$( document ).on( 'click', '#analyze', function() {
$.ajax({
url: checkurl.ajax_url,
type:'POST',
data:{
action: 'checkUrl',
//link_check : $('#main-input').val(),
},
success: function(msg){
alert(msg);
},
error:function(msg){
alert("Error");
}
});})
这是我添加ajax挂钩的方式:
add_action( 'wp_ajax_nopriv_checkUrl', 'checkUrl' );
add_action( 'wp_ajax_post_checkUrl', 'checkUrl' );
function checkUrl() {
echo "I works1";
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
//$url = $_POST['main-input'];
//echo $url;
echo "I work";
}
echo "I works";
die();
}
这就是我将剧本排队的方式:
function ajax_contact() {
wp_enqueue_script( 'ajaxcontact', get_template_directory_uri() .'/templates/ajaxcontact.js', array('jquery'), '1.0', true );
wp_localize_script( 'ajaxcontact', 'checkurl', array(
'ajax_url' => admin_url( 'admin-ajax.php' )
));
}
add_action( 'wp_enqueue_scripts', 'ajax_contact' );
最后2个代码段来自 function.php
我做错了什么?我尝试了很多东西,但到目前为止没有运气。
This是我拥有表单的页面的链接。这是一个测试页面。也许这有帮助。
答案 0 :(得分:0)
// Don't forget to stop execution afterward.
wp_die();