^ 回到顶部
  • 人生没有定律,每个人都有自己的节奏
  • 本站wordpress建站教程均通过实践后发布,希望对你有帮助
  • 希望你的坚持,都是因为热爱,而不是因为不甘心
  • 8年wordpress建站经验,5星服务品质
  • 那些不愿意让你吃亏的人,才是真正值得你深交的人,也是值得你付出时间的人
  • 阿里云2核2g仅需86元/年

wordpress函数get_boundary_post()用法示例

get_boundary_post( bool $in_same_term = false,  array|string $excluded_terms = '',  bool $start = true,  string $taxonomy = 'category' )

Retrieves the boundary post.


描述

Boundary being either the first or last post by publish date within the constraints specified by $in_same_term or $excluded_terms.

新用户2核2g仅需86元/年    领取1153套模板    免费cdn流量包    ¥3188礼包


参数

$in_same_term

(bool)
(Optional)
Whether returned post should be in a same taxonomy term.

Default value: false

$excluded_terms

(array|string)
(Optional)
Array or comma-separated list of excluded term IDs.

Default value: ”

$start

(bool)
(Optional)
Whether to retrieve first or last post. Default true

Default value: true

$taxonomy

(string)
(Optional)
Taxonomy, if $in_same_term is true.

Default value: ‘category’


返回值

(null|array) Array containing the boundary post object if successful, null otherwise.


源代码

File: wp-includes/link-template.php

function get_boundary_post( $in_same_term = false, $excluded_terms = '', $start = true, $taxonomy = 'category' ) {
	$post = get_post();
	if ( ! $post || ! is_single() || is_attachment() || ! taxonomy_exists( $taxonomy ) )
		return null;

	$query_args = array(
		'posts_per_page' => 1,
		'order' => $start ? 'ASC' : 'DESC',
		'update_post_term_cache' => false,
		'update_post_meta_cache' => false
	);

	$term_array = array();

	if ( ! is_array( $excluded_terms ) ) {
		if ( ! empty( $excluded_terms ) )
			$excluded_terms = explode( ',', $excluded_terms );
		else
			$excluded_terms = array();
	}

	if ( $in_same_term || ! empty( $excluded_terms ) ) {
		if ( $in_same_term )
			$term_array = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'ids' ) );

		if ( ! empty( $excluded_terms ) ) {
			$excluded_terms = array_map( 'intval', $excluded_terms );
			$excluded_terms = array_diff( $excluded_terms, $term_array );

			$inverse_terms = array();
			foreach ( $excluded_terms as $excluded_term )
				$inverse_terms[] = $excluded_term * -1;
			$excluded_terms = $inverse_terms;
		}

		$query_args[ 'tax_query' ] = array( array(
			'taxonomy' => $taxonomy,
			'terms' => array_merge( $term_array, $excluded_terms )
		) );
	}

	return get_posts( $query_args );
}

更新日志

Version 描述
2.8.0 Introduced.

相关函数

Uses

  • wp-includes/query.php:
    is_single()
  • wp-includes/query.php:
    is_attachment()
  • wp-includes/taxonomy.php:
    wp_get_object_terms()
  • wp-includes/taxonomy.php:
    taxonomy_exists()
  • wp-includes/post.php:
    get_posts()
  • wp-includes/post.php:
    get_post()
  • Show 1 more use


Used By

  • wp-includes/deprecated.php:
    get_boundary_post_rel_link()

让小雨知道,这篇文章帮到了你
扫码关注微信公众号zs40086(微搜片)随时随地微信看片,抢先福利电影等你来

热门推荐

如有疑问,请前往问答中心反馈!

反馈