我有一个PHP文件,我用Cron调用它,我需要它与其他代码分开使用。因此,我有一个按钮可以从仪表板调用AJAX请求。我的Wordpress插件中的Ajax函数包括文件(process.php),这反过来又包括另一个文件(snippets.php)。
如果我直接调用process.php,它可以很好地工作,但不是通过Ajax调用。
文件夹结构
plugin.php
plugin.js
snippets.php
processes/process.phpplugin.js
jQuery.ajax({
type: 'GET',
url: ajaxurl,
data : {
action : 'process',
}
})plugin.php
function process(){
include_once( 'processes/process.php' );
}
add_action( 'wp_ajax_process', 'process' );process.php
include_once('../snippets.php')
//here not includes 'snippets.php'发布于 2018-06-18 17:21:45
您应该从他们自己的文件中使用相对包含,否则,它将从当前路径运行。要强制这样做,可以使用__DIR__并从斜杠开始
plugin.php
function process(){
include_once(__DIR__.'/processes/process.php' );
}
add_action('wp_ajax_process', 'process' );process.php
include_once(__DIR__.'/../snippets.php');
//here not includes 'snippets.php'此外,您还忘记了process.php中的分号
https://stackoverflow.com/questions/50914257
复制相似问题