функция since 3.7.0

get_adjacent_post_link()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

get_adjacent_post_link( string $format, string $link, bool $in_same_term = false, int[]|string $excluded_terms = '', bool $previous = true, string $taxonomy = 'category' ): string

Описание

Может быть ссылкой на следующую или предыдущую запись.

Оригинал (английский)

Can be either next post link or previous.

Параметры

$format string обязательный
Формат якоря ссылки.
$link string обязательный
Формат постоянной ссылки.
$in_same_term bool необязательный = false
Должна ли ссылка относиться к тому же термину таксономии.
$excluded_terms int[]|string необязательный = ''
Массив или список ID исключаемых терминов, разделённых запятыми.
$previous bool необязательный = true
Показывать ли ссылку на предыдущую или следующую запись.
$taxonomy string необязательный = 'category'
Таксономия, если $in_same_term равно true. По умолчанию 'category'.

Возвращаемое значение

string

Исходный код

wp-includes/link-template.php:2344

function get_adjacent_post_link( $format, $link, $in_same_term = false, $excluded_terms = '', $previous = true, $taxonomy = 'category' ) {
	if ( $previous && is_attachment() ) {
		$post = get_post( get_post()->post_parent );
	} else {
		$post = get_adjacent_post( $in_same_term, $excluded_terms, $previous, $taxonomy );
	}

	if ( ! $post ) {
		$output = '';
	} else {
		$title = $post->post_title;

		if ( empty( $post->post_title ) ) {
			$title = $previous ? __( 'Previous Post' ) : __( 'Next Post' );
		}

		/** This filter is documented in wp-includes/post-template.php */
		$title = apply_filters( 'the_title', $title, $post->ID );

		$date = mysql2date( get_option( 'date_format' ), $post->post_date );
		$rel  = $previous ? 'prev' : 'next';

		$string = '<a href="' . get_permalink( $post ) . '" rel="' . $rel . '">';
		$inlink = str_replace( '%title', $title, $link );
		$inlink = str_replace( '%date', $date, $inlink );
		$inlink = $string . $inlink . '</a>';

		$output = str_replace( '%link', $inlink, $format );
	}

	$adjacent = $previous ? 'previous' : 'next';

	/**
	 * Filters the adjacent post link.
	 *
	 * The dynamic portion of the hook name, `$adjacent`, refers to the type
	 * of adjacency, 'next' or 'previous'.
	 *
	 * Possible hook names include:
	 *
	 *  - `next_post_link`
	 *  - `previous_post_link`
	 *
	 * @since 2.6.0
	 * @since 4.2.0 Added the `$adjacent` parameter.
	 *
	 * @param string         $output   The adjacent post link.
	 * @param string         $format   Link anchor format.
	 * @param string         $link     Link permalink format.
	 * @param WP_Post|string $post     The adjacent post. Empty string if no corresponding post exists.
	 * @param string         $adjacent Whether the post is previous or next.
	 */
	return apply_filters( "{$adjacent}_post_link", $output, $format, $link, $post, $adjacent );
}

История изменений

ВерсияОписание
3.7.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.