我试图将代码的一部分从函数中分离出来。php文件,使其更易于理解和维护。所以我想把我所有的;ajax“;不同PHP文件中的相关代码。
这是我的功能中的要求。php文件:
require_once( __DIR__ . \'/includes/ajax.php\');
下面是ajax的一些内容。php文件:
function theme_enqueue_ajax(){
wp_localize_script( \'myJSScript\', \'ajaxUrl\', array( \'url\' => admin_url( \'admin-ajax.php\' ) ) );
}
add_action( "wp_enqueue_scripts", "theme_enqueue_ajax");
如果我把代码放在ajax中。php直接在我的函数中。php文件,一切正常,但一旦我将其移动到ajax。php ajaxUrl变量不存在。
最合适的回答,由SO网友:anton 整理而成
当然有很多原因,但是如果你需要ajax.php
在函数中。phpabove 钩子与wp_enqueue_script( \'myJSScript\' ...);
- 这行不通。
wp\\u localize\\u script()
仅当已添加脚本时才起作用。
function theme_enqueue_ajax(){
//try to add wp_enqueue_script( \'myJSScript\' ...); here
wp_localize_script( \'myJSScript\', \'ajaxUrl\', array( \'url\' => admin_url( \'admin-ajax.php\' ) ) );
}
add_action( "wp_enqueue_scripts", "theme_enqueue_ajax");