context ); $request = new Google_Service_AnalyticsData_RunPivotReportRequest(); $dimensions = $this->parse_dimensions( $data ); // The hostName dimension must be added to every request because // we add a dimension filter in Analytics_4/Report/Request to // limit the data to the WordPress site URL. $dimensions[] = array( 'name' => 'hostName' ); if ( ! empty( $dimensions ) ) { if ( $is_shared_request ) { try { $request_helpers->validate_shared_dimensions( $dimensions ); } catch ( Invalid_Report_Dimensions_Exception $exception ) { return new WP_Error( 'invalid_analytics_4_report_dimensions', $exception->getMessage() ); } } $request->setDimensions( (array) $dimensions ); } $request = $request_helpers->shared_create_request( $data, $request, $is_shared_request ); $pivots = $this->parse_pivots( $data ); if ( ! empty( $pivots ) ) { $request->setPivots( $pivots ); } return $request; } }