!
也想出现在这里? 联系我们
广告位

WordPress通过admin-ajax.php传递值创建/存入文章字段

如何将网站前台的信息或者数据存入到网站后台指定的位置呢?常用的方法是直接写入数据库,然后在网站后台再读取数据库。如果你存入的数据比较少的话,使用这种方法就是高射炮打蚊子了。

对于强大的 WordPress 程序来说,它提供了一个非常棒的文件就是 admin-ajax.php,但实际使用比较少。我们可以通过 admin-ajax.php 来将网站前台的数据直接存入后台,并且是 AJAX 无刷新的方式,非常好用。下面讲一下 WordPress 通过 admin-ajax.php 传递值创建/存入文章字段的思路。

首先是传递数据。前台传递数据,我们可以直接使用 JQUERY 点击事件来传递给 admin-ajax.php;代码如下:

  1. <a data-action="download" data-cansu="参数" data-id="<?php the_ID(); ?>" class="download" href="" rel="external nofollow" >提交按钮</a>

写好了点击事件后,就要有一个函数来接收这个点击传递的各个参数

  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3. //定义一个函数
  4. $.fn.postdownload = function() {
  5. //获取参数
  6. var id = $(this).data("id"),//文章ID
  7. cansu=$(this).data("cansu"),//参数值
  8. action = $(this).data('action');//用于后期判断
  9. //传递的参数
  10. var ajax_data = {
  11. action: "bigfa_download",//定义一下action名
  12. um_id: id,
  13. um_action: action
  14. };
  15. //POST给admin-ajax.php处理
  16. $.post("<?php bloginfo('url');?>/wp-admin/admin-ajax.php", ajax_data,
  17. function(data) {
  18. });
  19. return false;
  20. };
  21. //通过点击事件来传递参数
  22. $(document).on("click", ".download",
  23. function() {
  24. $(this).postdownload();
  25. });
  26. });
  27. </script>

admin-ajax.php 接收到传来的参数后,就是处理这些参数。处理参数,WORDPRESS 有二个函数来处理 admin-ajax.php 的参数。分别是 wp_ajax_nopriv_action 名和 wp_ajax_action 名;

将以下的代码写入 functions.php 中;

  1. add_action('wp_ajax_nopriv_bigfa_download', 'downloadss');//未登录用户的AJAX请求处理函数 downloadss为写入自定义字段的函数名
  2. add_action('wp_ajax_bigfa_download', 'downloadss');//登录后所提交的AJAX处理函数

再后,就是将处理函数处理的参数写入到自定义字段中。

定义一个处理函数 downloadss,用于写入数据;

  1. function downloadss(){
  2. global $wpdb,$post;
  3. $id = $_POST["um_id"];
  4. $cansu = $_POST["cansu"];
  5. $action = $_POST["um_action"];
  6. //判断是不是通过指定点击来的参数
  7. if ( $action == 'download'){
  8. //存入自定义字段download,如果没有这个字段,会自动创建
  9. update_post_meta($id, 'download', $cansu);
  10. }
  11. die;
  12. }

上面的代码也放在 functions.php 中,在上一步代码的下面即可。这样前台通过点击传来的参数就被保存到某个自定义字段了。

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

WordPress 彻底禁用上传媒体图片自动生成缩略图及多尺寸图片

2022-12-23 14:12:06

WordPress教程

WordPress 评论框添加一言随机语录

2023-2-1 14:13:17

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索