通过页面ID获取Wordpress图库图像

时间:2015-10-03 21:35:27

标签: php wordpress gallery

我在WordPress中有一个名为' Gallery'的页面,页面ID为128,我需要在另一个具有不同ID的页面上显示该页面中的图库图像。使用标准的WordPress库功能上传图像。

我一直在尝试使用get_childrenforeach循环来实现它,但我似乎无法从我需要的页面中获取图库图像(ID 128)。

这是我到目前为止所拥有的:

$images = get_children( array( 
    'post_parent'    => 128, 
    'post_type'      => 'attachment', 
    'post_mime_type' => 'image', 
    'orderby'        => 'menu_order', 
    'order'          => 'ASC'
) ); 
if ( $images ) { 
    // looping through the images
    foreach ( $images as $attachment_id => $attachment ) {
        echo wp_get_attachment_image( $attachment_id, 'full' );
    }
}

如何在另一个页面上的WordPress页面中显示图库图像?

1 个答案:

答案 0 :(得分:1)

这最终由Nate Allen在WordPress堆栈交换中解决。

这是我的functions.php:

function na_get_gallery_image_urls( $post_id ) {

    $post = get_post($post_id);

    // Make sure the post has a gallery in it
    if( ! has_shortcode( $post->post_content, 'gallery' ) )
        return;

    // Retrieve all galleries of this post
    $galleries = get_post_galleries_images( $post );

    // Loop through all galleries found
    foreach( $galleries as $gallery ) {

        // Loop through each image in each gallery
        foreach( $gallery as $image ) {

            echo '<img src="'.$image.'">';

        }

    }

 }

用我的名字在我的页面上调用它:

<?php na_get_gallery_image_urls(128); ?>

128是附有图库的页面的ID。