日期:2016-02-29 阅读:1816
dmandwp系统 - wordpress系统和DM系统区块建站>>
wp_register_script用于注册一个脚本文件(JS文件)并将返回值的句柄提供给函数 wp_enqueue_script() 使用。
wp_register_script( "my_voter_script", WP_PLUGIN_URL.'/my_plugin/my_voter_script.js', array('jquery') );
wp_enqueue_script( 'my_voter_script' );
就等同于
wp_enqueue_script("my_voter_script", WP_PLUGIN_URL.'/my_plugin/my_voter_script.js', array('jquery'));
-------
再看下面代码:
add_action( 'init', 'my_script_enqueuer' ); //先enqueue,再记得要用add_action
function my_script_enqueuer() {
wp_register_script( "my_voter_script", WP_PLUGIN_URL.'/my_plugin/my_voter_script.js', array('jquery') );
wp_localize_script( 'my_voter_script', 'myAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' )));
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'my_voter_script' );
}
使用 wp_localize_script 从 PHP 传递参数给 JavaScript
这样,就可以在中my_voter_script.js 使用 myAjax.ajaxurl
-------------
https://www.smashingmagazine.com/2011/10/how-to-use-ajax-in-wordpress/
http://blog.wpjam.com/m/use-wp_localize_script/
--------------
参考代码:
function light_load_scripts() {
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'fancybox', plugin_dir_url( __FILE__ ) . 'js/jquery.fancybox.pack.js', array( 'jquery' ), false, true );
wp_enqueue_style( 'fancybox-style', plugin_dir_url( __FILE__ ) . 'css/jquery.fancybox.css' );
}
add_action('wp_enqueue_scripts', 'light_load_scripts');//可以用wp_enqueue_scripts或init