[英]WordPress Advanced Custom Field gallery doesn't return an array
我已經安裝了ACF Plugin
並且在我的帖子中歸檔了一個圖庫。 我已經嘗試了所有這些文檔,但仍然收到錯誤:
Invalid argument supplied for `foreach()`
發生這種情況是因為for的輸入不是數組!
您有什么線索嗎? 您認為在定義自定義字段時是否需要設置某些內容嗎?
<?php
$images = get_field('mygall');
$size = 'full'; // (thumbnail, medium, large, full or custom size)
if( $images ): ?>
<ul>
<?php foreach( $images as $image ): ?>
<li>
<?php echo wp_get_attachment_image( $image['ID'], $size ); ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
我認為您的問題出在您使用的是get_field()
而不是get_fields()
。 這樣就不會得到數組。
如果仍然無法使用,請在此處查看get_fields()
的文檔。 嘗試像僅使用get_fields()
一樣調試它,然后查看輸出是什么。 如果它是一個空數組,則意味着您正在loop
調用該函數,並且無法獲取該帖子的ID。 因此,通過手動設置帖子ID(如get_fields(123);
進行第二次測試get_fields(123);
並檢查結果。 如果沒有結果,則該帖子有問題。 如果有結果,則可以進行最終測試,檢查get_fields(123, 'gallery')
。
上面所有的調試過程都可以包裝成如下形式:
echo '<pre>';
print_r( get_fields(123) );
echo '</pre>';
基本上,這將使您對從此函數獲取的數據的結構有什么了解,以及如何操縱數據以獲取所需的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.