我正在尝试将附件添加到没有编辑器支持的自定义帖子类型(仅摘录)。
我已经设法显示了媒体管理器对话框,但我只能看到“插入帖子”按钮(无论如何它什么都不做),并且在上传图像时,它们不会附加到帖子中。
为了实现我到目前为止所做的事情,我在帖子类型中添加了一个非常简单的元框:
function add_gallery_post_media_meta_box()
{
add_meta_box(
'gallery_post_media',
'Gallery Media',
'gallery_post_media',
'gallery',
'side',
'high'
);
} // add_file_meta_box
add_action('add_meta_boxes', 'add_gallery_post_media_meta_box');
function gallery_post_media()
{
echo '<a href="#" id="gallery-add-media" title="' . __('Add media') .'">' . __('Add media') .'</a>';
} // end post_media
function register_admin_scripts() {
wp_enqueue_media();
wp_register_script( 'gallery_post_media_admin_script', get_template_directory_uri() . '/library/cpt/gallery.js' );
wp_enqueue_script( 'gallery_post_media_admin_script' );
} // end register_scripts
add_action( 'admin_enqueue_scripts', 'register_admin_scripts' );
和脚本:
jQuery(document).ready(function ($) {
$('#gallery-add-media').click(function (e) {
var send_attachment_bkp = wp.media.editor.send.attachment;
var button = $(this);
var id = button.attr('id').replace('_button', '');
wp.media.editor.send.attachment = function (props, attachment) {
$("#" + id).val(attachment.url);
wp.media.editor.send.attachment = send_attachment_bkp;
}
wp.media.editor.open(button);
event.preventDefault();
return false;
});
});
如果我能找到一些关于 的文档wp.media.editor.send.attachment
,我可能会设法得到我想要的,但我找不到任何有用的东西。我发现的唯一解决方案都依赖于自定义字段,相反,我只想将这些图像附加到帖子中,而不像处理普通帖子那样将它们插入帖子内容中。
作为一个附带问题:是否可以告诉媒体管理器只接受图像?