0
我有一個包含3個自定義域的頁面。對於每個這些領域,我需要使用一個模板。所以我做的是高級自定義域循環行爲
<?php if(have_rows('page_block')):?>
<?php while (have_rows('page_block')) : the_row();?>
<?php if(get_row_layout() == 'content_block'):?>
<?php get_template_part("content-block");?>
<?php elseif(get_row_layout() == 'slider'):?>
<?php get_template_part("slider"); ?>
<?php elseif(get_row_layout() == 'news_block'):?>
<?php get_template_part("news-block"); ?>
<?php endif; ?>
<?php endwhile; ?>
....
<?php endif; ?>
問題是隻有前兩個字段顯示在頁面上。所以當字段的順序是
- 內容塊
- 滑塊
- 新聞塊
只有內容塊和滑塊顯示。當我將滑塊放置在底部時,只顯示內容塊和新聞塊。
任何想法可能是什麼問題?
編輯 忘了提及,當我回顯get_row_layout()時,我得到所有3個字段的名稱。
<?php if(have_rows('page_block')):?>
<?php while (have_rows('page_block')) : the_row();?>
<?php echo get_row_layout(); ?>
<?php endwhile; ?>
<?php endif; ?>
顯示content_block滑塊news_block
你是否在沒有條件的情況下回應了has_rows中返回的內容?如果它沒有顯示,那要麼是因爲數據沒有回來,要麼是你的情況混亂。我會把所有的邏輯寫在一個單獨的php塊中,直到找出問題。 –
噢,忘了提到這一點。當我回顯get_row_layout()時,我得到所有3個字段的名稱。 – Jaimy
你可以請加上你的問題。只需複製並粘貼命令和結果,以便人們可以看到 –