• 解決済 amagaeru0426

    (@amagaeru0426)


    サーバの有効期限を管理するように作成しているのですが、
    途中まではうまくいったのですが、

    親:Repeater Fields → 子:Flexible Content → 孫:Repeater Fields(ここが表示されません)

    2回目のRepeater Fieldsが表示されません。

    ■親フィールド名:サーバー有効期限(タイプ:Repeater Fields)

    ●Repeater Fields

    フィールド名:有効期限確認URL(タイプ:text)
    フィールド名:取得サーバ(タイプ:flexible_content)

    ●flexible_content

    レイアウトname:管理URL(子フィールド全て:text)
    レイアウトname:サーバ情報(2度目のRepeater Fields)

    ●2度目のRepeater Fields(ここが表示されません)

    フィールド名:拡張
    子フィールド:サーバ
    子フィールド:期限

    <?php if(get_field('サーバー有効期限')): ?>
    <?php while(the_repeater_field('サーバー有効期限')): ?>
    
    	<?php the_sub_field('有効期限確認URL'); ?>
    
    	<?php while(has_sub_field('取得サーバ')): ?>
    
    		<?php if(get_row_layout() == '管理URL'): ?>
    			<?php the_sub_field('URL'); ?>
    			<?php the_sub_field('ID'); ?>
    			<?php the_sub_field('PASS'); ?>
    
    		<?php elseif(get_row_layout() == 'サーバ情報'): ?>
    			<?php if(get_field('拡張')): ?>
    			<?php while(the_repeater_field('拡張')): ?>
    
    				<?php the_sub_field('サーバ'); ?>
    				<?php the_sub_field('期限'); ?>
    
    			<?php endwhile; ?>
    			<?php endif; ?>
    
    		<?php endif; ?>
    
    	<?php endwhile; ?>
    
    <?php endwhile; ?>
    <?php endif; ?>

    指定自体は合っていると思うのですが、
    どこが間違っているかわかる方ご教示お願いします!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • Advanced Custom Fields のRepeater FieldsとFlexible Contentは
    データベースに保存する際に親のカスタムフィールド名をくっつけて保存していきます。

    例として
    parent_0_children_0_grandchildren_0_url
    こんな感じです。

    こうなると出力側のタグ類が間違っていなくても結果として書き出されないことがあります。
    トータルで64バイト(半角で64文字)以下にする必要があります。
    入れ子にするとその分長くなるので、一度各フィールド名を短くして試してみてください。

    あとこういったことがあると原因を探しづらいのでカスタムフィールド名は1バイト文字にした方が良いかも

    トピック投稿者 amagaeru0426

    (@amagaeru0426)

    ありがとうございます。
    まだエラーばかり発生しますが、恐らく私の書き方がいけないのだと思いますので、
    煮詰めてやってみます。

    ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)

トピック「Advanced Custom FieldsのRepeaterとFlexible Contentを組み合わせたい」には新たに返信することはできません。