如何显示当前帖子中的WordPress附件?

时间:2012-02-27 作者:Terrell Anderson

所以我的博客有一个照片附件页面,但它一次只显示给照片,而这两张照片被用作导航,我讨厌这样。

我想在附件页显示所有的照片,以及该集的其余部分。

这是当前代码

        <div id="nav-images" class="navigation clearfix">
            <div class="nav-next"><?php next_image_link() ?></div>
            <div class="nav-previous"><?php previous_image_link() ?></div>
如何更改以显示所有帖子附件?

2 个回复
SO网友:Chip Bennett

您的代码和描述似乎参考了上一个/下一个附件navigation. 该代码旨在显示上一个/下一个附件导航,这正是它所做的。

如果要显示所有附件:

在帖子内容中,使用the [gallery] shortcodeget_posts(), 结合,例如。wp_get_attachment_image():

<?php
global $post;
$attachment_images = get_posts(
    \'post_type\' => \'attachment\',
    \'post_parent\' => $post->post_parent,
    \'post_mime_type\' => \'image\'
);
// Output images
?>
<ul>
<?php
foreach ( $attachment_images as $attachment_image ) {
    // Output images here. Note that get_posts()
    // returns an array of OBJECTS, so the ID
    // would be $attachment_image->ID
    echo \'<li>\' . wp_get_attachment_image( $attachment_image->ID, \'thumbnail\' ) . \'</li>\';
}
?>
</ul>

SO网友:Terrell Anderson

嗨,奇普,不幸的是,这不起作用,但经过数小时的搜索,我终于找到了它。

首先,您必须将以下代码添加到函数中。php文件

function show_all_thumbs() {
    global $post;
    $post = get_post($post);
    /* image code */
    $images =& get_children( \'post_type=attachment&post_mime_type=image&output=ARRAY_N&orderby=menu_order&order=ASC&post_parent=\'.$post->post_parent);
    if($images){
        foreach( $images as $imageID => $imagePost ){
            unset($the_b_img);
            $the_b_img = wp_get_attachment_image($imageID, \'thumbnail\', false);
            $thumblist .= \'<a href="\'.get_attachment_link($imageID).\'">\'.$the_b_img.\'</a>\';
        }
    }
    return $thumblist;
}
然后将以下代码添加到要显示缩略图的位置。

<?php echo show_all_thumbs();?>
抱歉,我不知道如何将整个代码放入框中,所以我不得不塞满每一行:(

结束

相关推荐

how to edit attachments?

在将例如文件附加到帖子时,如何在事后编辑/删除它们?在帖子编辑器中找不到任何内容。谢谢