我没有测试任何东西,但我想应该是这样的:
因为您必须包括sidebar.php
, 只包括一个空的sidebar.php
, 并将实数留给sidebar-ajax.php
, 例如
调用侧栏:
<?php get_template_part(\'sidebar\'); ?>
应该是这样的:
<div id="sidebar"></div>
在您的
functions.php
:
add_action(\'wp_enqueue_scripts\', \'theme_enqueue_scripts\');
function theme_enqueue_scripts() {
wp_enqueue_script(\'jquery\');
/* load your js file in footer */
wp_enqueue_script(\'theme-script\', get_stylesheet_directory_uri() . \'/your-js-file.js\', false, false, true);
}
add_action(\'wp_ajax_get_ajax_sidebar\', \'check_ajax\');
add_action(\'wp_ajax_nopriv_get_ajax_sidebar\', \'check_ajax\');
function check_ajax() {
?>
get_template_part(\'sidebar-ajax\');
<?php
}
并且在
your-js-file.js
:
jQuery.ajax({
type: \'POST\',
url: location.href,
data: { get_ajax_sidebar: 1 },
success: function(data){
jQuery(\'#sidebar\').html(data);
}
});