Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress 访问Ajax Enqued文件以传递到Ajax调用URL的问题_Wordpress_Wordpress Theming - Fatal编程技术网

Wordpress 访问Ajax Enqued文件以传递到Ajax调用URL的问题

Wordpress 访问Ajax Enqued文件以传递到Ajax调用URL的问题,wordpress,wordpress-theming,Wordpress,Wordpress Theming,我试图访问WP主题目录中的定制php文件,以传递给jqueryajax调用。我在function.php中添加了foloowing代码来注册脚本和php文件 function add_ajax() { wp_enqueue_script( 'addproducts', get_template_directory_uri() .'/js/addproducts.js', array('jquery'),'',true ); wp_localize_script('addproducts',

我试图访问WP主题目录中的定制php文件,以传递给jqueryajax调用。我在
function.php
中添加了foloowing代码来注册脚本和php文件

function add_ajax() {
 wp_enqueue_script( 'addproducts', get_template_directory_uri() .'/js/addproducts.js', array('jquery'),'',true );
 wp_localize_script('addproducts', 'ajax_custom', array('ajaxurl' => admin_url('session.php')));
}
add_action( 'wp_enqueue_scripts', 'add_ajax' );
现在在我的JavaScript文件中,我试图传递url,比如
url:ajaxurl

var request = $.ajax({
type: "POST",
url: ajaxurl,
但是我得到的
ajaxurl没有定义
错误

addproducts.js?ver=4.9.6:6未捕获的引用错误:ajaxurl不是 定义 在兰开夏。(addproducts.js?ver=4.9.6:6) 在htmlanchorement.dispatch(jquery.min.js?ver=4.9.6:3) 在htmlanchorement.r.handle(jquery.min.js?ver=4.9.6:3)


您能告诉我缺少什么吗?

在您的functions.php中添加此代码

var request = $.ajax({
type: "POST",
url: ajax_custom.ajaxurl,
您需要调用ajax\u custom,因为它是您的ajaxurl的对象

还有另一种选择是可能的

添加动作('wp_head','myplugin_ajaxurl')

函数myplugin\u ajaxurl(){
回声'
var ajaxurl=“'.admin_url('admin-ajax.php')”;
';
}
添加_action('init','myplugin_ajaxurl');
function myplugin_ajaxurl() {

   echo '<script type="text/javascript">
           var ajaxurl = "' . admin_url('admin-ajax.php') . '";
         </script>';
}
add_action('init','myplugin_ajaxurl');