WP_Privacy_Requests_Table::get_request_counts() – Count number of requests for each status.

You appear to be a bot. Output may be restricted

Description

Count number of requests for each status.

Usage

$object = WP_Privacy_Requests_Table::get_request_counts();

Parameters

Returns

object Number of posts for each status.

Source

File name: wordpress/wp-admin/includes/class-wp-privacy-requests-table.php
Lines:

1 to 29 of 29
  protected function get_request_counts() {
    global $wpdb;

    $cache_key = $this->post_type . '-' . $this->request_type;
    $counts    = wp_cache_get( $cache_key, 'counts' );

    if ( false !== $counts ) {
      return $counts;
    }

    $query = "
			SELECT post_status, COUNT( * ) AS num_posts
			FROM {$wpdb->posts}
			WHERE post_type = %s
			AND post_name = %s
			GROUP BY post_status";

    $results = (array) $wpdb->get_results( $wpdb->prepare( $query, $this->post_type, $this->request_type ), ARRAY_A );
    $counts  = array_fill_keys( get_post_stati(), 0 );

    foreach ( $results as $row ) {
      $counts[ $row['post_status'] ] = $row['num_posts'];
    }

    $counts = (object) $counts;
    wp_cache_set( $cache_key, $counts, 'counts' );

    return $counts;
  }
 

 View on GitHub View on Trac