wp_update_comment_count

函数
wp_update_comment_count ( $post_id, $do_deferred = false )
参数
  • (int|null) $post_id Post ID.
    Required:
  • (bool) $do_deferred Optional. Whether to process previously deferred post comment counts. Default false.
    Required:
    Default: false
返回值
  • (bool|void) True on success, false on failure or if post with ID does not exist.
相关
  • wp_update_comment_count_now()
定义位置
相关方法
wp_update_comment_count_nowwp_update_commentwp_update_term_countwp_defer_comment_countingwp_update_network_counts
引入
2.1.0
弃用
-

wp_update_comment_count是WordPress中的一个函数,用于更新一个特定文章或一组文章的评论数: 该函数检索每个文章的批准的评论数,然后用这个信息更新存储在数据库中的postmeta。这使得WordPress能够跟踪每个文章的评论数量,并显示在文章编辑界面和WordPress管理的其他区域。

更新文章的评论数。

当$do_deferred为false(默认为false),并且评论已经被设置为deferred,文章_id将被添加到一个队列中,该队列将在稍后的日期被更新,每个文章ID只更新一次。

如果评论没有被设置为推迟,那么文章将被更新: 当$do_deferred被设置为”true”时,那么所有以前被推迟的文章ID将和当前的$post_id一起被更新。

function wp_update_comment_count( $post_id, $do_deferred = false ) {
	static $_deferred = array();

	if ( empty( $post_id ) && ! $do_deferred ) {
		return false;
	}

	if ( $do_deferred ) {
		$_deferred = array_unique( $_deferred );
		foreach ( $_deferred as $i => $_post_id ) {
			wp_update_comment_count_now( $_post_id );
			unset( $_deferred[ $i ] );
			/** @todo Move this outside of the foreach and reset $_deferred to an array instead */
		}
	}

	if ( wp_defer_comment_counting() ) {
		$_deferred[] = $post_id;
		return true;
	} elseif ( $post_id ) {
		return wp_update_comment_count_now( $post_id );
	}

}

常见问题

FAQs
查看更多 >