Parsed: 109083

  protected function set_pagination_args( $args ) {
    $args = wp_parse_args(
      $args,
      array(
        'total_items' => 0,
        'total_pages' => 0,
        'per_page'    => 0,
      )
    );

    if ( ! $args['total_pages'] && $args['per_page'] > 0 ) {
      $args['total_pages'] = ceil( $args['total_items'] / $args['per_page'] );
    }

    // Redirect if page number is invalid and headers are not already sent.
    if ( ! headers_sent() && ! wp_doing_ajax() && $args['total_pages'] > 0 && $this->WP_List_Table::get_pagenum() > $args['total_pages'] ) {
      wp_redirect( add_query_arg( 'paged', $args['total_pages'] ) );
      exit;
    }

    $this->_pagination_args = $args;
  }