如何在Wordpress中正确生成和更新元数据图像信息



我使用插件从使用我的wordpress网站上的表单上传的图像中提取EXIF图像数据。到目前为止,它可以正确地上传并插入图像到媒体库中,但我认为它没有生成任何元数据信息并更新它。我知道这一点,因为它曾经与我使用的另一种方法一起工作,但在我升级了一些插件后,它全部停止工作,我似乎无法修复它……下面是什么问题,可能不允许从上传的图像生成元数据信息?我在附件页面上得到这个错误:

注意:未定义变量:元数据在/mnt/soco-app/forms/wp-content/themes/212/image.php的第25行

//Add uploaded image to media library
add_action("gform_after_submission", "post_submission", 10, 2);
function post_submission($entry) {
    if($_FILES['input_5']) {/**TURN WP_DEBUG OFF WHEN FIXED**/
        $filename = $entry[5];
        $wp_filetype = wp_check_filetype(basename($filename), null );
        $wp_upload_dir = wp_upload_dir();
        $attachment = array(
            'guid' => $wp_upload_dir['url'] . '/' . basename( $filename ), 
            'post_mime_type' => $wp_filetype['type'],
            'post_title' => preg_replace('/.[^.]+$/', '', basename($filename)),
            'post_content' => '',
            'post_status' => 'inherit'
        );
        $parent_post_id = 9; //ID of Parent Page
        $attach_id = wp_insert_attachment( $attachment, $filename, $parent_post_id );
        require_once(ABSPATH . 'wp-admin/includes/image.php');
        $attach_data = wp_generate_attachment_metadata( $attach_id, $filename   );
        //require_once(ABSPATH . 'wp-includes/post.php');
        //update_post_meta( $parent_post_id, '_wp_attachment_metadata', $attach_data );
        wp_update_attachment_metadata( $attach_id,  $attach_data );
    } 
}

使用wp_generate_attachment_metadata函数

此函数为图像附件生成元数据。它还根据Settings_Media_Screen上定义的大小创建图像附件的缩略图和其他中间大小。

http://codex.wordpress.org/Function_Reference/wp_generate_attachment_metadata

相关内容

  • 没有找到相关文章

最新更新