2009-11-04 48 views
0

我使用这段代码(http://impnerd.com/wordpress-hack-add-post-images-to-your-homepage)显示上传到帖子摘录旁的主页上的帖子的第一张图片。我在主页的主循环之外这样做,并且一直有问题。当我做rewind_posts()来得到相同的循环的结果,它工作正常,但是当我尝试创建一个不同的循环,这个代码片断分解:多个循环工作,里面的功能不是

$images =& get_children('post_type=attachment&post_mime_type=image&post_parent=' . $post->ID); 

if ($images) 
{ 
    $keys = array_keys($images); 
    $num = $keys[0]; 
    $firstImageSrc = wp_get_attachment_thumb_url($num); 
    echo "<li><img src=\"{$firstImageSrc}\" width=\"288\" height=\"216\" alt=\"\" title=\"\" /></li>"; 
} 

我曾尝试在The_Loop#Multiple_Loops_in_Action方法文档,他们的工作,这意味着我可以在循环后得到正常输出,但我上面的代码片段不起作用。任何想法,如果有一个冲突的方法调用或发生的事情正在停止它的工作?希望能得到一些帮助,谢谢!

更具体:

<?php $my_query = new WP_Query('category_name=Daily Photo&showposts=1'); 
while ($my_query->have_posts()) : $my_query->the_post(); 
$do_not_duplicate = $post->ID; ?> 
<p>a</p> 
<?php $images =& get_children('post_type=attachment&post_mime_type=image&post_parent=' . $post->ID); 
if ($images) { 
$keys = array_keys($images); 
$num = $keys[0]; 
$firstImageSrc = wp_get_attachment_thumb_url($num); 
echo "<li><img src=\"{$firstImageSrc}\" width=\"288\" height=\"216\" alt=\"\" title=\"\" /></li>";} ?> 
<?php endwhile; ?> 

将输出<p>a</p>,但不是<li><img /></li>代码,我需要的片段。而如果我使用rewind_posts(),则一切正常,我得到<li><img /></li>代码,但我不想使用之前使用的相同循环。我使用此功能在侧边栏中显示每日照片,该照片从“每日照片”类别中拉出。我将从主循环中排除每日照片,只想使用它们从该片段中绘制图像。

+0

请界定 “不工作” – erenon 2009-11-04 18:02:23

+0

这将输出

一个

但没有
  • have_posts()):$ my_query-> the_post(); $ do_not_duplicate = $ post-> ID; ?>

    a

    <?php $ images =&get_children('post_type = attachment&post_mime_type = image&post_parent ='。$ post-> ID); ($ images){ $ keys = array_keys($ images); $ num = $ keys [0]; $ firstImageSrc = wp_get_attachment_thumb_url($ num); echo“
  • \"\"
  • ”;}?> <?php endwhile; ?> rewind_posts给出
  • bccarlso 2009-11-04 18:05:48

    +0

    这样的评论很凌乱,我更新了原文更加清晰。 – bccarlso 2009-11-04 18:08:57

    回答

    0

    尝试删除初学者的if语句。删除对图像的任何引用,看看它是否输出没有图像源的html。如果是这种情况,那么图像没有得到正确分配,并且从不执​​行代码。

    $images =& get_children('post_type=attachment&post_mime_type=image&post_parent=' . $post->ID); 
    

    此代码进行检查以查看是否存在上传到图库的 图像。

    现在您需要对上述说明进行疑难解答并了解为什么您没有获取任何图像。

    此外,它看起来像有一个plugin这样做,如果你不想继续搞乱代码。

    要记住的另一件事是,这段代码很旧,可能与您的wordpress版本不兼容。

    +0

    谢谢,最终结果是我只有一个帖子被分配到每日照片类别,我上传到它的图像不会保存到帖子的画廊,而是保存到整个媒体库中,以便代码片段甚至没有看到图像。感谢您提出删除if语句的建议。 – bccarlso 2009-11-04 18:32:51

    +0

    我很高兴你解决它:P – rwilliams 2009-11-04 18:43:31