AJax技术

wordpress开发教程:原生态的wordpress ajax

字号+ 作者:H5之家 来源:H5之家 2017-09-18 17:07 我要评论( )

最近小V(本站好友)在开发一款自适应的wordpress博客主题,该wordpress主题大量数据展示与提交都用到了ajax技术,所以小V特意写

最近小V(本站好友)在开发一款自适应的wordpress博客主题,该wordpress主题大量数据展示与提交都用到了ajax技术,所以小V特意写一篇教程记录下,方便其他wordpress开发者做wordpress ajax应用开发的时候做参考。如果有些小伙伴还不知道什么是ajax,请自行百度脑补~~,闲话就不多说了,教程开始。
不少开发者在写插件时喜欢用以下方式实现ajax:

  • require_once('../../../../wp-config.php');
  • 就连百度站长平台官方开发的wordpress结构化数据提交插件也是如此实现ajax的,这是一种极其不合理的写法,因为一旦用户设置的目录不同, 相对路径就会失效.并且, 如果你在你的插件中使用的是面向对象的写法, 你将无法直接使用一些变量和私有方法. 最大的坏处就是会导致整个Wordpress的框架额外重新加载一遍,严重的影响了网站的运行效率。

    其实,wordpress为了方便开发者开发带有ajax功能的插件主题已经预定义好了ajax方法,我们只需按照官方预留的方法去使用就好了。在开发wordpress ajax你要先了解的是,不管是后台还是前台任何的Ajax请求都是在admin-ajax.php处理的,向admin-ajax.php发送请求的时候, 有一个必须的参数是$_REQUEST['action'], 因为admin-ajax.php需要根据用户是否登陆了来触发不同的hooks。

    以上代码取自wordpress系统文件admin-ajax.php,从以上代码我们可以看出我们要发起一个请求首先要知道这个请求是否在登录状态下发起的?不同状态触发的hook也不一样,下面是个在主题利用jquery实现ajax的示例代码:

    在开发wordpress ajax应用中最重要的一点就是函数结束之前一定要加die或者exit,如果不加的话会把整个wordpress框架都重新加载一遍。

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • CDN后用Ajax动态提交、显示文章阅读量,cookies避免重复刷新

      CDN后用Ajax动态提交、显示文章阅读量,cookies避免重复刷新

      2017-09-04 17:04

    • limodou是一个程序员,他关心的焦点是Python, DocBook, Open So

      limodou是一个程序员,他关心的焦点是Python, DocBook, Open So

      2017-05-25 18:06

    • WordPress首页Ajax翻页

      WordPress首页Ajax翻页

      2017-03-11 14:05

    • WordPress Ajax评论插件:Ajax Edit Comments

      WordPress Ajax评论插件:Ajax Edit Comments

      2017-03-04 08:04

    网友点评