WordPress 技巧:通过图片地址获取 ID

当我们知道图片的地址的时候,需要知道这张图片在数据库中的 ID,从而获取图片的详细信息,比如高,宽等等,来做一些操作,那么首先第一个怎么通过图片地址获取 ID?可以通过下面函数实现:


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;
}
标签:

热门文章