为WP附件元数据添加值

时间:2015-03-01 12:16:51

标签: wordpress upload orientation attachment aspect-ratio

我想让Wordpress计算宽高比&上传媒体时的方向,而不是在模板中执行此操作。然后我可以调用图像并询问image.orientation,它会给我'肖像'或'风景'作为一个值。

示例,上传图片后的样子: Example, how it would look like after uploading an image

这是可能的还是我必须在前端做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以为它编写一些代码。使用http://codex.wordpress.org/Function_Reference/wp_get_attachment_metadata获取宽度和高度,然后使用{width / $ height> 1 =>风景,否则它的肖像。使用以下代码将此值存储在附件中:http://codex.wordpress.org/Function_Reference/wp_update_attachment_metadata

您可以对此使用操作,例如:

add_action('add_attachment', 'process_images');

在您的代码尝试之后添加解决方案(我已经测试过了):

function attachment_orientation_meta($id){
    $attachmentInfo = wp_get_attachment_metadata($id);
    $attachmentOrientation = ( $attachmentInfo['height'] > $attachmentInfo['width'] ) ? 'portrait' : 'landscape';
    update_post_meta($id, 'orientation', $attachmentOrientation);
}
add_action( 'add_attachment', 'attachment_orientation_meta' );