Web制作忘備録

ACF出力タグ

トップ MEMORANDAM WORDPRESS

ACF出力タグ

ACF

カスタムフィールドの出力方法、繰り返しフィールドや柔軟コンテンツ、フィールドの設定によって出し方が変わる。

フィールド値の取得と基本表示

//取得+出力
<?php the_field(‘フィールドの値’); ?>

//取得からの出力
<?php $text_field = get_field(‘フィールドの値’); ?>
<?php echo $text_field; ?>

//IDを指定して出力
<?php the_field(‘フィールドの値’,123); ?>

文字列フィールドの表示

フィールドタイプ「テキスト」「テキストエリア」「数値」「メール」「パスワード」に対応

<?php the_field(‘text’); ?>
//または
<?php $text = get_field(‘フィールドの値’);?>
<?php echo $text; ?>

画像の出力

<?php
$image = get_field(‘フィールドの値’);

//画像の情報を取得(よく使う)
$url = $image[‘url’];
$title = $image[‘title’];
$alt = $image[‘alt’];

//(あんまり使わない)
$caption = $image[‘caption’];
$description = $image[‘description’]
$size = ‘thumbnail’;
$thumb = $image[‘sizes’][ $size ];
$width = $image[‘sizes’][ $size . ‘-width’ ];
$height = $image[‘sizes’][ $size . ‘-height’ ];
?>

<a href=”<?php echo $url; ?>” title=”<?php echo $title; ?>”>
<img src=”<?php echo $thumb; ?>” alt=”<?php echo $alt; ?>” width=”<?php echo $width; ?>” height=”<?php echo $height; ?>” />
</a>
<p>
<?php echo $caption; ?>
<?php echo $description; ?>
</p>

繰り返しフィールドの出力

基本的に呼び出し方は単一の場合と同じだが、繰り返しフィールド内では
「get_field」は「get_sub_field」
「the_field」は「the_sub_field」
で出力する。

<?php if(have_rows(‘繰り返しフィールドの名前’)): ?>
<?php while(have_rows(‘繰り返しフィールドの名前’)): the_row(); ?>
<?php the_sub_field(‘フィールドの名前’); ?>
<?php endwhile; ?>
<?php endif; ?>

柔軟コンテンツの出力

柔軟コンテンツ内に作ったのレイアウトごとに出力を書いていく、ifで条件分岐しないと全て表示されるので分岐は必須

<?php if( have_rows(‘柔軟コンテンツ名’) ):?>
<?php while ( have_rows(‘柔軟コンテンツ名’) ) : the_row();?>

//もしレイアウト1があれば表示
<?php if( get_row_layout() == ‘レイアウト名1’ ):?>
<?php the_sub_field(‘レイアウト1の中のフィールド名’);?>

//もしレイアウト2があれば表示
<?php elseif( get_row_layout() == ‘レイアウト名2’ ): ?>
<?php the_sub_field(‘レイアウト2の中のフィールド名’);?>
<?php endif; ?>

<?php endwhile; ?>
<?php endif; ?>