我在WordPress中有一个名为' Gallery'的页面,页面ID为128,我需要在另一个具有不同ID的页面上显示该页面中的图库图像。使用标准的WordPress库功能上传图像。
我一直在尝试使用get_children
和foreach
循环来实现它,但我似乎无法从我需要的页面中获取图库图像(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页面中显示图库图像?
答案 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。