前提・実現したいこと
APIからWordPressのカスタム投稿に投稿する機能を実装しています。
APIから下記のようなjsonがPOSTされます。
json
1{ 2 [ 3 { 4 "h2": "FOO", 5 "text": "foo text" 6 }, 7 { 8 "h2": "FOO", 9 "text": "foo text second" 10 }, 11 { 12 "h2": "BAR", 13 "text": "bar text" 14 }, 15 ] 16}
重複するh2は1回だけ描画して、下記のようにhtmlを描画したいです。
html
1<h2>FOO</h2> 2<p>foo text</p> 3<p>foo text2</p> 4<h2>BAR</h2> 5<p>bar text</p>
発生している問題・エラーメッセージ
どのように書いたらよいか分かりません。
該当のソースコード
php
1<section> 2 <?php for ($i = 1; $i <= 3; $i++) { ?> 3 4 <h2><?php echo get_post_meta($post->ID, 'h2' . $i, true)); ?></h2> 5 <p><?php echo get_post_meta($post->ID, 'text' . $i, true)); ?></p> 6 7 <?php } ?> 8</section>
現状は上記のテンプレートになっています。
上記のテンプレートだと下記のように、<h2>FOO</h2>
が2つ描画されてしまいます。
html
1<h2>FOO</h2> 2<p>foo text</p> 3<h2>FOO</h2> 4<p>foo text2</p> 5<h2>BAR</h2> 6<p>bar text</p>
試したこと
ここに問題に対して試したことを記載してください。
php
1<?php if (h2の値が重複していない) : ?> 2 <h2><?php echo get_post_meta($post->ID, 'h2' . $i, true)); ?></h2> 3<?php endif; ?>
ロジック的に上記のようにifを書ければできそうだと考えて、「php html 重複 判定」で調べてみたのですが、できそうな情報を見つけられませんでした。

回答1件
あなたの回答
tips
プレビュー