サポート » 使い方全般 » 新着記事のサムネイル

  • 解決済 tar2323

    (@tar2323)


    初心者で不慣れながらもログを見ながら弄っております。
    上手く動作しないので、不備と言うか基礎的な思い違いがあるような気がしますので、質問させて貰います。

    [カテゴリ1の新着記事サムネイル] [カテゴリ2の新着記事サムネ]
    ページ下部にカテゴリ毎の新着記事のサムネイルを表示させたいと思っております。

    幾つか方法を試してみたのですが、タイトルと記事へのリンクは動作するものの、サムネイルだけが表示されません。(サムネイルを持っていないときの処理があるものを付けた場合はnoimageが表示される)

    functions.phpに
    add_theme_support( ‘post-thumbnails’ );
    set_post_thumbnail_size( 100, 100, true );

    トップページのテンプレートやfooter.phpに
    <?php
    query_posts(‘cat=36&posts_per_page=1’);
    if (have_posts()) :
    while (have_posts()) : the_post(); ?>
    “><?php the_title(); ?>
    <?php
    if ( has_post_thumbnail() ): // サムネイルを持っているときの処理
    ?><?php the_post_thumbnail( array(150,150), array(‘class’ => ‘imgLeft’) ); ?><?php
    else: // サムネイルを持っていないときの処理
    ?><img src=”<?php bloginfo(‘template_url’) ?>/image/no_image.gif” alt=”noimage” class=”imgLeft” /><?php
    endif; ?><?php the_excerpt(); ?>
    <?php
    endwhile;
    endif;
    wp_reset_query();
    ?>

    といった記述をしています。
    他のログで別の記述の仕方をされてるものも真似てみたのですが、基本的にタイトルは表示され、リンクは出来るのにサムネイルが表示されないと言う現象は同じです。
    サムネイル自体は投稿時に

    もしお解りの方居られましたらご教授願いたいです。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • 追記です。

    テーマはWordPress Default 1.6
    ブラウザはfirefox、chromeで確認しましたが同じ状態です(タイトルは出るがサムネイルが表示されない)。
    サーバはXREAです。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    記載いただいたコードは検証していませんが、自分はquery_postではなくget_postを使って同様の事を行い、実現できています。

    <?php
    	$posts = get_posts("numberposts=1&category_name=****");
    		global $post;
    	foreach ($posts as $post):
    	setup_postdata($post); ?>
    	<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail(array(150,150)); ?></a>
    	<?php endforeach; ?>

    if文他、アイキャッチ以外の部分は省略してます。

    メインループと別に、なにか投稿データを引っ張ってくる必要があるときはget_postの方がいいと思います。

    【参考】
    テンプレートタグ/get posts – WordPress Codex 日本語版
    テンプレートタグ/query_posts – WordPress Codex 日本語版

    query_posts() 関数はメインの WordPress ループだけを変更するためのものです。新たなループを作るためのものではありません。メインループの他にループが必要な場合は、get_posts() を使ってください。メインループの他で query_posts() を使用すると、メインループが不正な状態になり期待する結果が得られません。

    返信ありがとうございます。
    教えて頂いたコードを記述してみましたが、現象は同じで
    タイトルは表示され、リンクは出来るのにサムネイルが表示されないと言う状態です。

    funchions.php内の

    add_theme_support( 'post-thumbnails' );
    set_post_thumbnail_size( 100, 100, true );

    に問題があるのかとも思いましたが
    消すと
    Fatal error: Call to undefined function the_post_thumbnail() in~~と表示されますし、何らかの形で動作はしているのだと思いますが・・・。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    うーん、こちらの環境では同じように書いても問題ないのですが。。。。

    • query_postやget_post内ではなく、普通のループ内(single.phpとか)に書いた the_post_thumbnailでは、ちゃんと画像が出ますか?
    • TwentyTenとかElevenとか、手を加えていないテーマではアイキャッチ画像は出ますか?
    • プラグインなど全部外したら、なにか変わりますか?

    ↑ここいらで追加情報あればお願いします。

    >query_postやget_post内ではなく、普通のループ内(single.phpとか)に書いた the_post_thumbnailでは、ちゃんと画像が出ますか?

    <?php the_post_thumbnail(); ?>と言う記述で問題ないならば表示されません。

    >TwentyTenとかElevenとか、手を加えていないテーマではアイキャッチ画像は出ますか?
    WordPress Default 1.6でやったように書いてみましたが同様の結果です。

    プラグインは全て停止しています。

    もっと根本的なところに問題があると言うことでしょうか。
    PHPなどのバージョンの問題かとも思いましたが、サーバで使っているPHPバージョン4と5の混在らしくどちらか解らないので、別のサーバでももう一度試してみようと思います。

    別のサーバで設置してみましたが同じ結果でした。

    <?php the_post_thumbnail(); ?>を置く位置等問題あるのかも知れませんが、何処においても表示されませんでした。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    まさかとは思いますが、画像アップ後の「アイキャッチ画像として使用」のテキストリンクをクリックしてないとかいうのじゃないですよね。。。

    PHP4だとそもそも動作対象外だと思うのでそこは関係無いような気はするんですが。。。。
    あとは私の技量だと実物いじってみないとわかりませんm(_ _)mゴメンナサイ

    本当に申し訳ありません。
    ありがとうございます。
    その、まさかでした。。。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「新着記事のサムネイル」には新たに返信することはできません。