Blog

【WordPress】繰り返し表示ができるACF Repeater Fieldについて

2016/06/15

Wordpress プラグイン

すでにWordpressが用意されている案件がありまして、
プラグインでAdvanced Custom Fields: Repeater Fieldというのが入っていました。

皆さんはすでにご存じかもしれませんが、
初めて見たプラグインなので調べたところ、
Advanced Custom Fieldsの有償プラグインでした。

購入方法、インストール方法については、
他のサイトでも案内していますので割愛します。
※2018年現在、PRO版に移行したため単独での購入はできません。

繰り返しで使うフィールドを設定できる便利なプラグインです。
今まではカスタムフィールドで「●●1」「●●2」のように設定をしていたので、
早く知っておけばよかったと思いました。

インストール後の使い方についてです。

プラグインを有効化するとフィールドタイプに「Repeater」が追加されます。

「Repeater」を選択するとRepeater Fieldsが表示されます。

ここで、フィールド名を「test」にし、
テストタイトル「test_title」、テスト内容「test_comment」を設定ます。

ルールでフィールドグループを設定して完了です。

次に表示についてです。

公式ページにタグが出ていました。
The Repeater Field

例えば上記の設定の場合、
repeater_field_nameがtest、
sub_field_nameがフィールド名になります。

<?php if( have_rows('test') ): ?>
<?php while ( have_rows('test') ) : the_row(); ?>
    
    <p><?php the_sub_field('test_title'); ?></p>
    <p><?php the_sub_field('test_comment'); ?></p>

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

これで繰り返し情報が表示されます。

固定ページの場合

参考サイト
設定用固定ページからAdvanced Custom Fieldsの値を取得する

Repeatフィールド名「top_links」、SubFieldで、「top_link_name」(サイト名称、テキスト※フォーマットはNoFormatting)と「top_link_url」(サイトURL、テキスト※フォーマットはNoFormatting)を設定。
※ページIDは20。

<?php if( have_rows('top_links',20) ): ?>
	<ul>
	<?php while( have_rows('top_links',20) ): the_row(); 
	$top_link_name = get_sub_field('top_link_name');
	$top_link_url = get_sub_field('top_link_url');
	?>
		<?php echo '<li>'.$top_link_name.'<br><a href="'.$top_link_url.'" target="_blank">'.$top_link_url.'</a></li>'; ?>
	<?php endwhile; ?>
	</ul>
<?php endif; ?>

備忘録でした。



カテゴリー

月間アーカイブ

MORE

ミュージシャンズ・プラザ

神社仏閣ホームーページ制作

ホームページ制作問合せ