在ProcessWire中,在发出AJAX请求时,您可以在模板文件中设置它:
<?php if (!$config->ajax) include('./head.inc'); ?>
是否有Wordpress的等价物?
<?php get_header(); ?>
答案 0 :(得分:2)
您可以设置$ _GET参数
function ajax_query() {
// Return normally if the ajax query isn't set
if ( ! isset( $_GET['_pjax'] ) ) {
return;
}
set_query_var( 'ajax', 'true' );
}
add_filter( 'template_redirect', 'ajax_query' );
然后使用参数/page/?ajax=true
进行JS AJAX调用。
在模板中:
$is_ajax_query = get_query_var( 'ajax' );
if ( $is_ajax_query && 'true' === $is_ajax_query) :
get_header();
endif;
就其他答案而言,我不知道是否只会在JS请求中调用wp_doing_ajax
函数。我从未尝试过,而且没有太多文档。我不知道WordPress如何知道它是一个AJAX请求。对于WordPress,它看起来就像我想的普通获取请求。所以参数可以工作。