我的event-item.php
<?php
/**
* The event template
*/
?>
<li>
<article id="event-<?php the_ID(); ?>" <?php echo event_canceled($post) ? post_class(\'wrapper canceled\') : post_class(\'wrapper\'); ?>>
这导致了…
<article id="event-168" class="post-168 type-wr_event status-publish hentry wrapper wr_event schoenebuecher">
但是,在加载此事件项时。通过ajax的php模板
wr_event
未添加。
有人知道为什么会发生这种情况,或者是什么导致了这种情况吗?
Update:
Ajax:
$.get(
ajax.url,
{
\'action\': \'get_event_list\',
\'order\' : \'DSC\',
},
function( response, status ) {
$(\'ul.event-items\').append(response);
}
);
functions.php
add_action(\'wp_enqueue_scripts\', \'theme_name_scripts\');
function theme_name_scripts() {
wp_enqueue_script( \'script-name\', get_bloginfo(\'stylesheet_directory\') . \'/js/min.js\', array(), \'1.0.0\', false );
wp_localize_script( \'script-name\', \'ajax\', array( \'url\' => admin_url( \'admin-ajax.php\' ) ) );
}
add_action(\'wp_ajax_get_event_list\', \'get_event_list\');
add_action(\'wp_ajax_nopriv_get_event_list\', \'get_event_list\');
function get_event_list( $latest = true, $order = \'ASC\', $return = false, $year = NULL, $cat = \'\' ) {
现在我去掉了在标题中嵌入脚本的标记。php文件。管理ajax和嵌入的脚本可以工作,但是在行为上没有任何改变,仍然没有
wr_event
在后课堂上。
最合适的回答,由SO网友:Manolo 整理而成
您必须使用此格式:
功能。PHP
function theme_name_scripts() {
wp_enqueue_script( \'script-name\', get_bloginfo(\'stylesheet_directory\') . \'/js/min.js\', array(), \'1.0.0\', true );
wp_localize_script( \'script-name\', \'ajax\', array( \'url\' => admin_url( \'admin-ajax.php\' ) ) );
}
function ajax_callback() {
get_event_list();
}
add_action( \'wp_enqueue_scripts\', \'theme_name_scripts\' );
add_action(\'wp_ajax_ajax\', \'ajax_callback\');
add_action(\'wp_ajax_nopriv_ajax\', \'ajax_callback\');
AJAX:
$.get(
ajax.url,
{
\'action\': \'ajax\',
\'order\' : \'DSC\',
},
function( response, status ) {
$(\'ul.event-items\').append(response);
}
);
您可以使用此行明确包括
wr_event
类别:
<article id="event-<?php the_ID(); ?>" <?php echo event_canceled($post) ? post_class(\'wrapper canceled wr_event\') : post_class(\'wrapper wr_event\'); ?>>
并添加
die();
在模板文件的末尾,以避免显示零。