How to fetch all images from particular page id in

2019-08-03 05:09发布

I have created a page called "Gallery" and created new gallery with 10 images. My page id is 129. I have 10 images in that page id(129). Now my question is, i need a code to fetch those 10 images in wordpress. please anyone help me with a code. Thanks in advance.

标签: wordpress
2条回答
Bombasti
2楼-- · 2019-08-03 05:45

Use get_children

I used this code to extract all the images from a page gallery in the chosen order. you can include this code in the loop or use it stand alone. just choose the appropriate post_parent code (see bellow the code example).

This example show all images associated to the page id 129, have a look:

    $images = get_children( array( 'post_parent' => 129, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 999 ) ); 

$images is now a object that contains all images (related to post id 1) and their information ordered like the gallery interface.

    if ( $images ) { 

            //looping through the images
            foreach ( $images as $attachment_id => $attachment ) {
            ?>

                        <?php /* Outputs the image like this: <img src="" alt="" title="" width="" height="" /> */  ?> 
                        <?php echo wp_get_attachment_image( $attachment_id, 'full' ); ?>

                        This is the Caption:<br/>
                        <?php echo $attachment->post_excerpt; ?>

                        This is the Description:<br/>
                        <?php echo $attachment->post_content; ?>

            <?php
            }
    }

Find the post id you wan to extract images from and insert it into this argument: 'post_parent' => 129

you can also use:

'post_parent' => $post->ID If you want to use get_children in a loop, and get the post id from the returned post id.

If you want to exclude the image selected as a featured image i would have a if statement check if the image URL is equal to the featured image URL.

查看更多
祖国的老花朵
3楼-- · 2019-08-03 05:51

Get all images from post.


function get_all_images() {
  global $post, $posts;
  $first_img = '';
  ob_start();
  ob_end_clean();
  $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  $first_img = $matches [1] [0];
  return $first_img;
}

Here you get frist image such like you get all other images

查看更多
登录 后发表回答