WordPress教程

WordPress任何页面调用“插入图片”按钮

阿里云

最近在开发新主题的时候,需要普通用户能上传自己的作品到网站,大家都知道,wordpress 的会员是分了角色的,只有作者级别的用户才能够上传附件,那么如何在 wordpress 任何一个页面调用“插入图片”按钮,实现上传图片功能。wordpress 已经想到了我们会用这样的一个功能,所以他自己集成了一些函数,帮助我们去完成这样的效果。

  1. <?php 
  2.     wp_enqueue_script('media-upload');
  3.     wp_enqueue_script('thickbox');
  4.     wp_enqueue_script('my-upload');
  5.     wp_enqueue_style('thickbox'); 
  6. ?>
也想出现在这里?联系我们
创客主机

这四个函数,大家应该一看就能明白,不明白的可以去官网函数库找找,主要是引入一些上传窗口的 js 脚本和 css 样式新建一个文本框和按钮,用于触发上传图片动作和回调:

  1. <input id="upload_image" type="text" value="" />
  2. <input id="upload_image_button" type="button" style="width:auto;height:20px;" value="上传图片" />

样式大家可以自行定义,这里只是演示一下这个功能,最后编写 js 代码:

  1. <script>
  2. jQuery(document).ready(function() {
  3.     jQuery('#upload_image_button').click(function() {
  4.      formfield = jQuery('#upload_image').attr('name');
  5.      // show WordPress' uploader modal box
  6.      tb_show('', '<?php echo admin_url(); ?>media-upload.php?type=image&TB_iframe=true');
  7.      return false;
  8.     });
  9.     window.send_to_editor = function(html) {
  10.      // this will execute automatically when a image uploaded and then clicked to 'insert to post' button
  11.      imgurl = jQuery('img',html).attr('src');
  12.      // put uploaded image's url to #upload_image
  13.      jQuery('#upload_image').val(imgurl);
  14.      tb_remove();
  15.     }
  16. });
  17. </script>

如果您的主题没有引入 jquery 库,可能会报错:jquery 不是一个对象,那么引入 jquery 库即可解决。好了代码编写完毕。不过这个方法还是慎用,毕竟要允许上传就会有一定的风险,各位倒腾倒腾吧!

WordPress 任何页面调用“插入图片”按钮

已有 445 人购买
查看演示升级 VIP立刻购买

收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!