acfで画像サイズを指定する場合
-2015年08月04日-
functions.phpに適切な画像サイズを選択する。acf画像呼び出しも記載する。
add_theme_support( 'post-thumbnails' );
add_image_size( 'top_slider', 810, 360, true );//topスライダー
add_image_size( 'w700', 700, 440, true );//横幅700
■ACF画像の呼び出し v1.1
ACF_image('項目名','サイズ','種類');
種類:photo、url、alt、title、caption
■種類とサイズは省略可能。
サイズ → full
種類 → imgタグが呼び出されます。
■CF画像の返り値は必ず「画像オブジェクト」にする。
*//////////////////////////////////////
function ACF_img($str,$size_name='full',$type='photo',$row=''){
//空入力を有効に
if($type ==''){$type = 'photo';}
//rowを第2因数以降でも有効に
if($size_name == 'row' || $type == 'row' ){
$row = 'row';
$type='photo';
if($size_name == 'row'){
$size_name='full';
}
}
//rowの処理
if($row != 'row'){
$image = get_field($str);
}else{
//繰り返し(repeater)の画像呼び出し
$image = get_sub_field($str);
}
//画像情報の読み込み
if( !empty($image) ){
// vars
$url = $image['url'];
$alt = $image['alt'];
$title = $image['title'];
$caption = $image['caption'];
// Resize
if(($size_name != '') && ($size_name != 'full')){
$thumb = $image['sizes'][$size_name];
}else{
$thumb = $url;
}
switch ($type){
case 'photo': $photo = '<img src="'.$thumb.'" alt="'.$alt.'" />';break;
case 'url': $photo = $thumb;break;
case 'alt': $photo = $image['alt'];break;
case 'title': $photo = $image['title'];break;
case 'caption': $photo = $image['caption'];break;
}
echo $photo;
}
}
<?
$img = get_sub_field('メイン画像');//画像(返り値は「画像ID」)
$imgurl = wp_get_attachment_image_src($img, 'w390'); //サイズは自由に変更できる
if($imgurl){ ?><img src="<? echo $imgurl[0]; ?>" alt="">
<? } ?>