At the top of wp-admin/edit-form-advanced.php 我看到以下代码似乎与媒体上载程序相关:
if ( post_type_supports($post_type, \'editor\') || post_type_supports($post_type, \'thumbnail\') ) {
    add_thickbox();
    wp_enqueue_script(\'media-upload\');
}
 您需要自己添加这些。
add_thickbox() 将脚本和样式都排队,因此请确保
print_styles, 像
print_scripts 也无法打印样式。
add_action(\'admin_print_styles-post-new.php\', \'wpa4016_add_media_upload_scripts\');
add_action(\'admin_print_styles-post.php\', \'wpa4016_add_media_upload_scripts\');
function wpa4016_add_media_upload_scripts()
{
    if ($GLOBALS[\'post_type\'] == \'wpa4016\') {
        add_thickbox();
        wp_enqueue_script(\'media-upload\');
    }
}
 现在我们需要添加上传按钮。我懂了
the_editor(), 显示编辑器的函数有一个参数
$media_buttons, 如果我们开始
true 它基本上执行
do_action(\'media_buttons\'). 这依次调用
media_buttons(), 哪个呼叫
_media_button() 对于每种媒体类型(图像、视频、音频等)。所以我们自己做!
add_action(\'edit_form_advanced\', \'wpa4016_edit_form_advanced\');
function wpa4016_edit_form_advanced()
{
    if ($GLOBALS[\'post_type\'] == \'wpa4016\') {
        echo _media_button(__(\'Add an Image\'), \'images/media-button-image.gif?ver=20100531\', \'image\');
    }
}
 附件确实是类型的自定义帖子
attachment, 用他们的
post_parent 设置他们所属的岗位。图像有两个元字段:
_wp_attached_file 包含文件名,
_wp_attachment_metadata 包含一个数组,其中包含图像EXIF数据和指向同一图像不同大小的指针。您可以使用
wp_insert_attachment(), 但我相信你仍然需要自己处理上传。