2013-07-22 134 views
0

我在頁面上有一個圖片庫,而且我使用高級自定義字段來拉取該圖像的縮略圖和較大版本。現在,我將它設置爲兩個單獨的字段,因此用戶必須上傳兩個單獨的圖像(縮略圖和全尺寸)。我試圖設置它,所以用戶只需要上傳一張圖片,但是當我按照http://www.advancedcustomfields.com/resources/field-types/image/上的示例進行操作時,縮略圖不起作用,但完整圖片仍然有效。下面的代碼我一直使用:高級自定義字段(ACF)不顯示縮略圖

<?php query_posts(array(
       'post_type' => 'gallery_images', 
       'posts_per_page' => 20, 
)); ?> 

<?php while (have_posts()) : the_post(); $gallery_images; 

       $attachment_id = get_field('gallery_full'); 
       $size = "thumbnail"; // (thumbnail, medium, large, full or custom size) 
       $image = wp_get_attachment_image_src($attachment_id, $size); 

?> 
     <div class="gallery_image_wrap"><a rel="shadowbox[galpage]" href="<?php the_field('gallery_full'); ?>"><img src="<?php echo $image[0]; ?>" /></a></div>      


<?php endwhile; ?> 
<?php wp_reset_query(); ?> 

這是什麼,它返回一個例子:

<div class="gallery_image_wrap"> 
<a href="http://example.com/photo.jpg" rel="shadowbox[galpage]"> 
<img src=" "> 
</a> 
</div> 

我在做什麼錯? (另外,我嘗試上傳了一張新圖片,看看這是否是一個解決方案,而我仍然遇到同樣的問題。)

回答

0

wp_get_attachment_image_src將返回縮略圖的原始圖像在本地文件系統上不存在。該函數返回一個布爾值,如果正在使用縮略圖則爲TRUE,如果正在使用原件則返回FALSE。

您可以檢查通過:

<?php while (have_posts()) : the_post(); $gallery_images; 

       $attachment_id = get_field('gallery_full'); 
       $size = "thumbnail"; // (thumbnail, medium, large, full or custom size) 
       $image = wp_get_attachment_image_src($attachment_id, $size); 
       if(!$image[3]) { echo "Thumbnail not available"; } 
?> 

上面的代碼可能不會對您的問題做很多工作,但它會給你在哪裏邏輯是打破一個更好的主意。

如果這實際上是發生了什麼,您應該根據一些文檔查看PHP的內存限制。這可以通過將以下行添加到.htaccess來解決:

php_value memory_limit 128M 
+0

這樣做後,看起來Wordpress不會生成縮略圖。我試圖添加內存限制到.htaccess文件沒有運氣...任何其他建議? –

相關問題