0

私は奇妙な問題を抱えていますが、それは明らかな何かが欠けているためだと思っています...

最近、Wordpress のインストールが 3.8.1 にアップグレードされました。ニュース項目の一部として、サイトのディレクトリ内で WordPress を使用しています。サイトの他のセクションの投稿をループして、最新のニュースなどを表示します

アイキャッチ画像を有効にして、次のコードを使用してワードプレス/ニュースのホームページにアイキャッチ画像を表示します。

<a href="<?php the_permalink() ?>"><div class="snippet-featured-img"><?php the_post_thumbnail('thumbnail'); ?></div></a>

これは問題なく動作し、150px x 150px のアイキャッチ画像を出力します。

また、サイトの他のページでループする投稿の横に注目の画像を表示したいのですが、うまく機能していないようです。

これはコードです:

foreach($posts as $post) {
setup_postdata($post);
if ( has_post_thumbnail() ) {
echo "<a href='";
echo the_permalink();
echo "'>";
the_post_thumbnail(array('50','50'));
echo "</a>";
}
echo "<h2><a href=\"";
echo the_permalink();
echo "\" rel=\"bookmark\" title=\"Permanent Link to ";
echo the_title();
echo "\">";
echo the_title();
echo "</a></h2>\n<p>";
$string = strip_tags(strip_shortcodes($post->post_content));
echo chop_string($string,190,'...');
echo " <a href=\"";
echo the_permalink();
echo "\" rel=\"bookmark\" title=\"Permanent Link to ";
echo the_title();
echo "\">";
echo "Read More</a></p>\n";
echo "<div class='clear'></div>\n";
} 

post var は、スクリプトの少し上で宣言されています。

$posts = get_posts('numberposts=8&orderby=date');

画像以外のすべてが出力され、画像が出力されるべき場所の周りのリンクも出力されます。これは、has_post_thumbnail() 関数が true を返したことを示しています。私が言ったように、それはワードプレスのページ自体にも取り組んでいます。

サイズ配列の代わりに渡された「サムネイル」と get_the_post_thumbnail() を試してみましたが、なぜ機能しないのか途方に暮れています!

どんな助けでも素晴らしいでしょう

ありがとう

4

2 に答える 2

0

変更してみる

the_post_thumbnail(array('50','50'));

echo get_the_thumbnail($post->ID, array(50,50));
于 2014-02-14T09:38:35.047 に答える
0

get 関数を使用してこれを使用します。

<?php echo get_the_post_thumbnail($page->ID, 'thumbnail'); ?>


    get_the_post_thumbnail($post_id);                  // without parameter -> Thumbnail

    get_the_post_thumbnail($post_id, 'thumbnail');     // Thumbnail
    get_the_post_thumbnail($post_id, 'medium');        // Medium resolution
    get_the_post_thumbnail($post_id, 'large');         // Large resolution
    get_the_post_thumbnail($post_id, 'full');          // Original resolution

    get_the_post_thumbnail($post_id, array(100,100) ); // Other resolutions

カスタム投稿タイプでは、カスタム ループで setup_postdata( $post ) を実行していますか? そうでない場合、 has_post_thumbnail() が定義されていない/利用できない可能性がありますか?

EDIT:

追加してみてください:

setup_postdata( $post );

直前:

$loop->the_post();

And then see if has_post_thumbnail() returns true?

Or, try passing the $post->ID to your call to has_post_thumbnail()?

has_post_thumbnail( $post->ID );
于 2014-02-14T09:36:33.543 に答える