Yoast\WP\SEO\Dashboard\Application\Traffic
Organic_Sessions_Daily_Repository{}└─ Dashboard_Repository_Interface
The data provider for daily organic sessions data.
Хуков нет.
Использование
$Organic_Sessions_Daily_Repository = new Organic_Sessions_Daily_Repository(); // use class methods
Методы
- public __construct(
- public get_data( Parameters $parameters )
Код Organic_Sessions_Daily_Repository{} Organic Sessions Daily Repository{} Yoast 27.4
class Organic_Sessions_Daily_Repository implements Dashboard_Repository_Interface {
/**
* The adapter.
*
* @var Site_Kit_Analytics_4_Adapter
*/
private $site_kit_analytics_4_adapter;
/**
* The site kit configuration object.
*
* @var Site_Kit
*/
private $site_kit_configuration;
/**
* The constructor.
*
* @param Site_Kit_Analytics_4_Adapter $site_kit_analytics_4_adapter The adapter.
* @param Site_Kit $site_kit_configuration The site kit configuration object.
*/
public function __construct(
Site_Kit_Analytics_4_Adapter $site_kit_analytics_4_adapter,
Site_Kit $site_kit_configuration
) {
$this->site_kit_analytics_4_adapter = $site_kit_analytics_4_adapter;
$this->site_kit_configuration = $site_kit_configuration;
}
/**
* Gets daily organic sessions' data.
*
* @param Parameters $parameters The parameter to use for getting the daily organic sessions' data.
*
* @return Data_Container
*
* @throws Data_Source_Not_Available_Exception When this repository is used without the needed prerequisites ready.
*/
public function get_data( Parameters $parameters ): Data_Container {
if ( ! $this->site_kit_configuration->is_onboarded() || ! $this->site_kit_configuration->is_ga_connected() ) {
throw new Data_Source_Not_Available_Exception( 'Daily organic sessions repository' );
}
return $this->site_kit_analytics_4_adapter->get_daily_data( $parameters );
}
}