前提・実現したいこと
ワードプレスでループの入れ子の値を外で条件分岐させたいです。
使用しておりますプラグインは「Advanced Custom Field」です。
以下のソースでは「link1」に値が渡っていた場合にページ内リンクを表示させたいです。
どなたかわかる方がおりましたら教えていただけないでしょうか
該当のソースコード
<?php if( have_rows('link1') ):?> <a href="">リンク1</a> <?php endif; ?> <?php while ( have_rows('block') ): the_row();?> <?php while ( have_rows('link1') ): the_row();?> <p><?php the_sub_field('title'); ?></p> <?php endwhile;?> <?php endwhile;?>
試したこと
最初の1個目の「block」のループでは
「<?php if( have_rows('block') ):?><a href="#01">リンク1</a><?php endif; ?>」
は上手くいくのですが入れ子のループになると値を取得出来ませんでした
ACFのアドオン Repeater Field(有料機能)をお使いなのですね。
ここを見る限り
https://hirashimatakumi.com/blog/30.html
記述は間違ってないように見受けられます。
となると、the_sub_fieldに与えてる、'txt'というフィールド名は正しいですか?
そこを確認されたほうがよろしいかと思います。
ご連絡ありがとうございます。
カスタムフィールドの名前は間違っていないのですが
色々と考えてみた所、
恐らくループの入れ子をループの外に出したのが原因で条件分岐できない状態だと思います。
ただスマートな記述が思い浮かばない為、悩んでいます。
回答を考えているのですが、具体的なACFフィールドの構造が、ご提示いただいた情報だけでは把握できず。
答えるに答えられない状況です。
質問は編集・追記できますので、ACFの当該のフィールド群の画像を貼り付けていただけないでしょうか?
それを見れば、こちらでも、同じ環境を作ってテストすることができ、回答をかけると思います。
ご連絡遅れ申し訳ありません。
キャプチャを貼り付けましたのでご連絡させていただきます。
回答1件
あなたの回答
tips
プレビュー




