我已经将wp_enqueue_script和wp_localize_script添加到了我的functions.php中,它们似乎无处不在--甚至是后端,这导致了一些问题。有没有办法把它们限制在正面,或者主页上。
add_action也是必要的吗?它们似乎没有它就能工作。
wp_enqueue_script( 'frontJquery', get_template_directory_uri() . '/js/front.js', [ 'jquery' ]);
wp_localize_script( 'frontJquery', 'ajax_page', [
'url' => admin_url( 'admin-ajax.php' ),
] );
function savedata(){
$stripSl = stripslashes($_POST[data]);
$dataOf = json_decode($stripSl, true);
$dateOf = date("H:i:s d-m-Y");
global $wpdb;
$wpdb->insert('user_info',
array(
'currentDate' => $dateOf,
'amount' => $dataOf['moneyOf'],
'email' => $dataOf['emailOf'],
),
array(
'%s',
'%s'
)
);
die();
return true;
}
add_action('wp_ajax_savedata', 'savedata');
add_action('wp_ajax_nopriv_savedata', 'savedata');发布于 2018-02-22 13:45:25
如果连接到脚本,就可以有条件地注入样式表和JS文件。
例如:
function wp2441_enqueue_scripts() {
if ( is_front_page() ){ // change for is_home() if you're not using a front page
wp_enqueue_script( 'frontJquery', get_template_directory_uri() . '/js/front.js', array('jquery') );
wp_localize_script( 'frontJquery', 'ajax_page', array(
'url' => admin_url( 'admin-ajax.php' ),
));
}
}
add_action( 'wp_enqueue_scripts', 'wp2441_enqueue_scripts' );
// This action hook tells WP to enqueue all of these files only on the front-end.
// There's a different hook to enqueue files on the back-end.有用的参考资料:
https://stackoverflow.com/questions/48925209
复制相似问题