Wordpress サイドバーに追加されたスライダーのカテゴリに属する投稿のメイン画像を表示する必要があります。ページにいる場合、コードは完全に機能しますが、ホームページや検索結果ページでは機能しません。これが私のコードです:
<ul id="sliderContent">
<?php
$joiners .= " LEFT OUTER JOIN wp_term_relationships r ON r.object_id = wp_posts.ID
LEFT OUTER JOIN wp_term_taxonomy x ON x.term_taxonomy_id = r.term_taxonomy_id
LEFT OUTER JOIN wp_terms t ON t.term_id = x.term_id ";
$sentgeters .= " AND t.slug = 'CATEGORY_NAME_GOES_HERE' ";
$querystr = "
SELECT wp_posts.*
FROM wp_posts ".$joiners."
WHERE wp_posts.post_status = 'publish'
AND wp_posts.post_type = 'post' ".$sentgeters."
ORDER BY RAND() " ;
$pageposts = $wpdb->get_results($querystr, OBJECT);
?>
<?php if ($pageposts): ?>
<?php global $post; ?>
<?php foreach ($pageposts as $post): ?>
<?php setup_postdata($post); ?>
<li class="sliderImage">
<a href="<?php the_permalink() ?>"><?php main_image(); ?></a>
<span class="top"><?php the_title(); ?></span>
</li>
<?php endforeach; ?>
<?php endif; ?>
<div class="clear sliderImage"></div>
</ul>
main_image() は、投稿にアップロードされた最初の画像を表示するために作成した関数です。何か案が?