2009-08-21 17 views
1

私はアーカイブページに表示するために使用するポストから自動生成されたサムネイル画像を取得する次のコードを持っています。コードはローカルサーバーで正常に動作しますが、Webにアップロードするとすぐに機能しません。WordPressの自動生成サムネイルの問題

---- EDIT -----

何それは今表示すると、全ての投稿のために同じサムネイルである、最初のポストにリンクされている1が入力されました。これがなぜ起こっているのでしょうか?

<ul> 

<?php query_posts('cat='.get_query_var('cat').'&order=ASC'); ?> 

    <?php if (have_posts()) : ?> 

     <?php while (have_posts()) : the_post(); ?> 

     <?php 
//Get images attached to the post 

$args = array(
    'post_type' => 'attachment', 
    'post_mime_type' => 'image', 
    'numberposts' => -1, 
     'order' => 'DESC', 
    'post_status' => null, 
    'post_parent' => $post->ID 
); 
$attachments = get_posts($args); 
if ($attachments) { 
    foreach ($attachments as $attachment) { 
     $img = wp_get_attachment_thumb_url($attachment->ID); 
       break; 
     } 
} 
?> 

      <li> 
       <img src="<?php echo $img; ?>" alt="" /> 
       <h2 class="small"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2> 
      </li>     

     <?php endwhile; ?> 

     <?php endif;?> 

     </ul> 

答えて

2

あなたの編集に応じて。 while()ループを繰り返し実行するたびに$ imgをリセットする必要があります。次に、イメージタグを書き込む前に、そのセットが正しいかどうかチェックする必要があります。これにより、同じサムネイルが繰り返されなくなります。サンプルコードは以下の通りです。

最初の投稿の画像は見つかっていますが、他の投稿の画像は見つからないため、今すぐ繰り返しています。しかし$ imgは最初の投稿に設定されているので、決してリセットや変更が行われないので、他の投稿にはそのまま使用されます。

+0

残念ながらこれもうまくいかず、うまくいっていますが動作します。うーん............ – DanC

0

多分、サーバー上のGDライブラリがありませんか?確認するためにphpinfo()をチェックしましたか?

+0

クイックチェック – DanC