如果用户单击按钮,我将尝试通过ajax加载模板。这是我正在使用的代码:
在…上functions.php
:
function phantom_scripts() {
global $child_dir;
/* Ajax Requests */
wp_enqueue_script( \'ajax-stuff\', get_stylesheet_directory_uri() . \'/js/ajax.js\', array( \'jquery\' ), true );
}
add_action( \'wp_enqueue_scripts\', \'phantom_scripts\' );
function portfolio_ajax() {
include( \'templates/cards.php\' );
die();
}
add_action(\'wp_ajax_nopriv_portfolio_ajax\', \'portfolio_ajax\');
add_action(\'wp_ajax_portfolio_ajax\', \'portfolio_ajax\');
wp_localize_script( \'ajax-stuff\', \'ajaxStuff\', array( \'ajaxurl\' => admin_url( \'admin-ajax.php\' ) ) );
在上
ajax.js
:
(function($) {
$(\'#load-cards\').click(function() {
alert();
$.ajax({
url: ajaxurl,
data: {
action: \'portfolio_ajax\'
},
success: function(data) {
$(\'#cards-container\').append(data);
},
error: function(MLHttpRequest, textStatus, errorThrown){
alert(errorThrown);
}
});
});
})(jQuery);
HTML
:
<a href="javascript:void(0)" id="load-cards">Load cards</a>
现在,控制台没有向我显示任何错误,但没有加载我在中的内容
templates/cards.php
文件知道我错过了什么吗?