日期:2015-04-10 阅读:2184
dmandwp系统 - wordpress系统和DM系统区块建站>>
wordpress里有一个admin-ajax.php,这个非常有用,让你在wordpress可以灵活的使用ajax.
http://www.smashingmagazine.com/2011/10/18/how-to-use-ajax-in-wordpress/
以上两个链接写的很不错。
比如这个是什么意思呢?
function.php加:
function view_site_description(){//这是你使用ajax的具体执行内容所在。
echo get_bloginfo( 'description', 'display' );
die();
}
add_action( 'wp_ajax_view_site_description', 'view_site_description' );
add_action( 'wp_ajax_nopriv_view_site_description', 'view_site_description' );
wp_ajax_nopriv是用于非登录用户的。
注意红色的view_site_description,
下面来讲解
---
Anchor to be placed:
<a id="view_site_description" href="javascript:void(0);">View Our Site Description</a>
Next, Adding the JavaScript codes using wp_footer hook.
add_action( 'wp_footer', 'add_js_to_wp_footer' );
function add_js_to_wp_footer(){ ?>
<script type="text/javascript">
jQuery('#view_site_description').click(function(){
jQuery.ajax({
type: 'POST',
url: ajaxurl, //这个是wp-admin/admin-ajax.php
data: {"action": "view_site_description"},
//这个很重要,它会产生上面两个hook:wp_ajax_view_site_description和 wp_ajax_nopriv_view_site_description
//所以,这时会去调view_site_description函数,这才是真正要执行的部分。因为前面有add_action
success: function(data){alert(data);}
});
return false;
});
</script>
<?php }
----------
这段代码可以产生ajaxurl这个变量,上面用到了
function add_ajaxurl_cdata_to_front(){ ?> --- 这一段可以考虑wp_localize_script ,参考: detail-365.html
<script type="text/javascript"> //<![CDATA[
ajaxurl = '<?php echo admin_url( 'admin-ajax.php'); ?>';
//]]> </script>
<?php }
add_action( 'wp_head', 'add_ajaxurl_cdata_to_front', 1);
-----
这样,对wordpress的ajax使用就基本了解了。关键是view_site_description函数,这是你使用ajax的具体执行内容所在。