当我们知道图片的地址的时候,需要知道这张图片在数据库中的 ID,从而获取图片的详细信息,比如高,宽等等,来做一些操作,那么首先第一个怎么通过图片地址获取 ID?可以通过下面函数实现:
代码语言:javascript复制function wpjam_get_attachment_id ($img_url) {
$cache_key = md5($img_url);
$post_id = wp_cache_get($cache_key, 'wpjam_attachment_id' );
if($post_id == false){
$attr = wp_upload_dir();
$base_url = $attr['baseurl']."/";
$path = str_replace($base_url, "", $img_url);
if($path){
global $wpdb;
$post_id = $wpdb->get_var("SELECT post_id FROM $wpdb->postmeta WHERE meta_value = '{$path}'");
$post_id = $post_id?$post_id:'';
}else{
$post_id = '';
}
wp_cache_set( $cache_key, $post_id, 'wpjam_attachment_id', 86400);
}
return $post_id;
}