{$post_type}->number; /** * Checks if a given post type is allowed on this plan * Allow plugin developers to filter the return value * * @since 1.7.0 * @param bool If the post type is disabled or not * @param WU_Plan Plan of the current user * @param int User id */ return apply_filters('wu_limits_is_post_above_limit', $quota > 0 && $post_count >= $quota); } /** * Get the post count for this site. * * @since 2.0.0 * * @param string $post_type The post type to check against. * @return int */ public static function get_post_count($post_type) { $count = 0; $post_count = wp_count_posts($post_type); $statuses = 'attachment' === $post_type ? ['inherit'] : ['publish', 'private']; /** * Allow plugin developers to change which post status should be counted * By default, published and private posts are counted * * @since 1.9.1 * @param array $post_status The list of post statuses * @param string $post_type The post type slug * @return array New array of post status */ $post_statuses = apply_filters('wu_post_count_statuses', $statuses, $post_type); foreach ($post_statuses as $post_status) { if (isset($post_count->{$post_status})) { $count += (int) $post_count->{$post_status}; } } /** * Allow plugin developers to change the count total * * @since 1.9.1 * @param int $count The total post count * @param object $post_counts WordPress object return by the wp_count_posts fn * @param string $post_type The post type slug * @return int New total */ return apply_filters('wu_post_count', $count, $post_count, $post_type); } }