adjacent_image_link( bool $prev = true, string|array $size = 'thumbnail', bool $text = false )
Displays next or previous image link that has the same post parent.
Description
Retrieves the current attachment object from the $post global.
Parameters
- $prev
-
(Optional) Whether to display the next (false) or previous (true) link.
Default value: true
- $size
-
(Optional) Image size. Accepts any valid image size, or an array of width and height values in pixels (in that order). Default 'thumbnail'.
Default value: 'thumbnail'
- $text
-
(Optional) Link text.
Default value: false
Source
File: wp-includes/media.php
function adjacent_image_link( $prev = true, $size = 'thumbnail', $text = false ) {
$post = get_post();
$attachments = array_values( get_children( array( 'post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) ) );
foreach ( $attachments as $k => $attachment ) {
if ( $attachment->ID == $post->ID ) {
break;
}
}
$output = '';
$attachment_id = 0;
if ( $attachments ) {
$k = $prev ? $k - 1 : $k + 1;
if ( isset( $attachments[ $k ] ) ) {
$attachment_id = $attachments[ $k ]->ID;
$output = wp_get_attachment_link( $attachment_id, $size, true, false, $text );
}
}
$adjacent = $prev ? 'previous' : 'next';
/**
* Filters the adjacent image link.
*
* The dynamic portion of the hook name, `$adjacent`, refers to the type of adjacency,
* either 'next', or 'previous'.
*
* @since WP-3.5.0
*
* @param string $output Adjacent image HTML markup.
* @param int $attachment_id Attachment ID
* @param string $size Image size.
* @param string $text Link text.
*/
echo apply_filters( "{$adjacent}_image_link", $output, $attachment_id, $size, $text );
}
Changelog
Version | Description |
---|---|
WP-2.5.0 | Introduced. |