###現状
カスタム投稿に次のようなケーキの投稿があります。
###これがやりたい
今回やりたいのは『カスタム投稿のカスタムフィールドを一覧する固定ページを作りたい』ということです。
###困っています
困っていることは、『カスタムフィールドのデータが重複する』ことです!!
###この書き方ではなぜダメなのか?
最初の画像にあります[phpinclude file='cake']で呼び出すcake.phpは下記のように書いてあります。
ターム(tarmberryとtarmchoco)と、arciveページで条件分岐させています。
cake.php
php
1<?php if(is_tax('cat', 'tarmberry') || has_term('tarmberry','cat')): ?> 2<?php 3global $post; 4$Tokuchou = get_post_meta(100,'field_cake'); 5?> 6 7<?php elseif(is_tax('cat', 'tarmchoco') || has_term('tarmchoco','cat')): ?> 8<?php 9global $post; 10$Tokuchou = get_post_meta(101,'field_cake'); 11?> 12 13<?php elseif (is_archive()): ?> 14<?php 15global $post; 16$Tokuchou = get_post_meta($post->ID,'field_cake'); 17?> 18<?php endif; ?> 19 20<!-- ケーキのデータ --> 21<div class="cake_name">ケーキ</div> 22<div class="cake_area"> 23<ul class="cake_ul"> 24 <?php if(in_array("berry",$Tokuchou)):?> 25 <li> 26 いちごケーキ<br> 27 <img src="https://example.com/wp-content/uploads/2017/07/berry.png" alt="いちごケーキ"> 28 </li> 29 <?php endif;?> 30 <?php if(in_array("choco",$Tokuchou)):?> 31 <li> 32 チョコケーキ<br> 33 <img src="https://example.com/wp-content/uploads/2017/07/choko.png" alt="チョコケーキ"> 34 </li> 35 <?php endif;?> 36</ul> 37</div> 38<!-- ケーキのデータここまで -->
次は固定ページです。[phpinclude file='menu']で呼び出すmenu.phpは下記のように書いてあります。
menu.php
php
1<?php if(is_tax('cat', 'tarmberry') || has_term('tarmberry','cat')): ?> 2<h2 class="title"><?php echo get_the_term_list(100,'cat'); ?></h2> 3<div class="col"> 4 <?php get_template_part( 'cake' ); ?> 5</div> 6<?php endif; ?> 7 8<?php if(is_tax('cat', 'tarmchoco') || has_term('tarmchoco','cat')): ?> 9<h2 class="title"><?php echo get_the_term_list(101,'cat'); ?></h2> 10<div class="col"> 11 <?php get_template_part( 'cake' ); ?> 12</div> 13<?php endif; ?>
###質問です
長くなってしまいすみません。
なぜ上記のmenu.phpではいちごケーキが重複してしまうのか?
ご指摘頂ければ幸いです。
phpが初期化されてないからかな、などと思い、あちこちに
<?php $Tokuchou = array(); ?>などを加えてみましたが、
ダメでした。
いちごケーキだけが表示されたり、チョコケーキだけが表示されたり、はたまた何も表示されなかったりします。。
初期化の方法がダメなのでしょうか?
それとも別の原因なのでしょうか?
どなたか、どうか助けてくださいませ。
宜しくお願い致します!( ノД`)シクシク…
回答2件
あなたの回答
tips
プレビュー