你可以在add_attachment
和edit_attachment
动作挂钩和使用PHPexif_read_data()
要将EXIF数据添加到附件的元数据,请执行以下操作:
<?php
add_action( \'add_attachment\', \'wpse302908_add_exif\' );
add_action( \'edit_attachment\', \'wpse302908_add_exif\' );
/**
* Inserts metadata from an image\'s EXIF data.
*
* @param int $post_id The attachment\'s post ID.
* @return void
*/
function wpse302908_add_exif( $post_id ) {
// These are the keys for the data you want from the EXIF data.
$exif_keys = array( \'key_1\', \'key_2\' );
$exif_data = exif_read_data( get_attachment_image_url( $attachment_id );
foreach ( $exif_keys as $exif_key ) {
update_post_meta( $post_id, $exif_key, $exif_data[ $exif_key ] );
}
}
注释:此代码未经测试我假设您想要的元键名称与图像的EXIF数据中提供的名称匹配此代码不会检查以确保您正在上载图像;您可能需要为此插入一些检查参考文献
add_attachment
hookedit_attachment
hookexif_read_data()
wp_get_attachment_image_url()
update_post_meta()