小智 8
首先,您需要将wordpress核心媒体脚本和自定义js脚本排入队列
function my_enqueue_media_lib_uploader() {
//Core media script
wp_enqueue_media();
// Your custom js file
wp_register_script( 'media-lib-uploader-js', plugins_url( 'media-lib-uploader.js' , __FILE__ ), array('jquery') );
wp_enqueue_script( 'media-lib-uploader-js' );
}
add_action('admin_enqueue_scripts', 'my_enqueue_media_lib_uploader');
Run Code Online (Sandbox Code Playgroud)
然后,假设您在选项页面中有此标记:上传按钮和用于存储所选图像URL的文本输入
<form method="post">
<input id="image-url" type="text" name="image" />
<input id="upload-button" type="button" class="button" value="Upload Image" />
<input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
您需要添加此javascript代码以调用上传器弹出窗口
jQuery(document).ready(function($){
var mediaUploader;
$('#upload-button').click(function(e) {
e.preventDefault();
// If the uploader object has already been created, reopen the dialog
if (mediaUploader) {
mediaUploader.open();
return;
}
// Extend the wp.media object
mediaUploader = wp.media.frames.file_frame = wp.media({
title: 'Choose Image',
button: {
text: 'Choose Image'
}, multiple: false });
// When a file is selected, grab the URL and set it as the text field's value
mediaUploader.on('select', function() {
attachment = mediaUploader.state().get('selection').first().toJSON();
$('#image-url').val(attachment.url);
});
// Open the uploader dialog
mediaUploader.open();
});
});
Run Code Online (Sandbox Code Playgroud)
选择图像后,您的image-url输入现在将包含该网址,并将保存在表单提交中.
| 归档时间: |
|
| 查看次数: |
4878 次 |
| 最近记录: |