Yoast\WP\SEO\Dashboard\Domain\Search_Rankings
Comparison_Search_Ranking_Data::parse_data
Parses search ranking data into the expected format.
Метод класса: Comparison_Search_Ranking_Data{}
Хуков нет.
Возвращает
Массив<Строку,. int> The parsed data
Использование
// private - только в коде основоного (родительского) класса $result = $this->parse_data( $search_ranking_data ): array;
- $search_ranking_data(Search_Ranking_Data[]) (обязательный)
- The search ranking data to be parsed.
Код Comparison_Search_Ranking_Data::parse_data() Comparison Search Ranking Data::parse data Yoast 27.8
private function parse_data( array $search_ranking_data ): array {
$parsed_data = [
'total_clicks' => 0,
'total_impressions' => 0,
];
$weighted_postion = 0;
foreach ( $search_ranking_data as $search_ranking ) {
$parsed_data['total_clicks'] += $search_ranking->get_clicks();
$parsed_data['total_impressions'] += $search_ranking->get_impressions();
$weighted_postion += ( $search_ranking->get_position() * $search_ranking->get_impressions() );
}
if ( $parsed_data['total_impressions'] !== 0 ) {
$parsed_data['average_ctr'] = ( $parsed_data['total_clicks'] / $parsed_data['total_impressions'] );
$parsed_data['average_position'] = ( $weighted_postion / $parsed_data['total_impressions'] );
}
return $parsed_data;
}