[英]Displaying Multiple Custom Fields of the same name in Post Content
因此,使用帶有來自客戶現有網站的大量導入內容的新Wordpress主題,在其舊主題中,他們將多個圖像附加到其各自的投資組合頁面。
這些圖像都共享相同的自定義字段名稱:project_photo_photo
我遇到的問題是,在新主題中,我該如何挽救導入的數據並利用現有的自定義字段名稱,並在發布循環模板中為每個發布顯示多個項目圖像?
下面的代碼示例顯示了嘗試顯示此內容有多遠,它僅顯示一個圖像結果,添加同一代碼塊的倍數只會導致顯示第一個圖像的副本:
<?php if ( get_post_meta( get_the_ID(), 'project_photo_photo' ) ) : ?>
<div class="grid_gallery clearfix">
<div class="grid_gallery_inner">
<figure class="gallery_item featured-thumbnail thumbnail single-gallery-item">
<a href="/wp-content/files_mf/<?php echo get_post_meta( get_the_ID(), 'project_photo_photo', true ); ?>" class="image-wrap" rel="prettyPhoto[gallery]">
<img class="project_photo_photo" width="260" src="/wp-content/files_mf/<?php echo get_post_meta( get_the_ID(), 'project_photo_photo', true ); ?>" alt="<?php the_title(); ?>" />
<span class="zoom-icon"></span>
</a>
</figure>
</div>
<!--END .slider -->
</div>
<?php endif; ?>
我覺得我已經接近了,必須要有一種優雅的方法。 如果有人可以在這里幫助我,我將不勝感激。
如果同一自定義字段有多個條目,則嘗試獲取一個數組
get_post_meta( get_the_ID(), 'project_photo_photo' )
但是如果您將true
用作最后一個參數,則您只會得到第一個值
get_post_meta( get_the_ID(), 'project_photo_photo', true )
。
您可以在此處獲取更多信息: http : //codex.wordpress.org/Function_Reference/get_post_meta
這就是為什么您每次都能獲得單一結果的原因。
同樣,您應該只查詢一次meta字段。 您已查詢3次,這花費了數據庫操作和時間。 調用一次,保存為變量,並根據需要使用盡可能多的內容。
您將為照片獲得一系列值。 您需要遍歷以獲取它們中的每一個。
我已經修改了您的代碼,希望我已經將forloop
放置在適當的位置,如果沒有,請放置在適當的位置。
<?php $project_photos = get_post_meta( get_the_ID(), 'project_photo_photo' );
if ( $project_photos ) : ?>
<div class="grid_gallery clearfix">
<?php foreach( $project_photos as $project_photo ) { ?>
<div class="grid_gallery_inner">
<figure class="gallery_item featured-thumbnail thumbnail single-gallery-item">
<a href="/wp-content/files_mf/<?php echo $project_photo; ?>" class="image-wrap" rel="prettyPhoto[gallery]">
<img class="project_photo_photo" width="260" src="/wp-content/files_mf/<?php echo $project_photo; ?>" alt="<?php the_title(); ?>" />
<span class="zoom-icon"></span>
</a>
</figure>
</div>
<?php } ?>
<!--END .slider -->
</div>
<?php endif; ?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.