PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.23.0
Independent Analytics – WordPress Analytics Plugin v1.23.0
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Queries / Referrers.php
independent-analytics / IAWP / Queries Last commit date
Campaigns.php 3 years ago City_Statistics.php 3 years ago Country_Statistics.php 3 years ago Current_Traffic_Finder.php 3 years ago Referrers.php 3 years ago Resources.php 3 years ago Visitors_Over_Time_Finder.php 3 years ago
Referrers.php
45 lines
1 <?php
2
3 namespace IAWP_SCOPED\IAWP\Queries;
4
5 use IAWP_SCOPED\IAWP\Date_Range\Date_Range;
6 use IAWP_SCOPED\IAWP\Models\Referrer;
7 use IAWP_SCOPED\IAWP\Query;
8 class Referrers
9 {
10 /**
11 * @var Date_Range
12 */
13 private $date_range;
14 private $results;
15 /**
16 * @param Date_Range $date_range Range to fetch referrers for
17 */
18 public function __construct(Date_Range $date_range)
19 {
20 $this->date_range = $date_range;
21 }
22 public function fetch() : array
23 {
24 if (\is_null($this->results)) {
25 $this->results = $this->query();
26 }
27 return $this->results;
28 }
29 private function query() : array
30 {
31 $rows = Query::query('get_referrers', ['start' => $this->date_range->iso_start(), 'end' => $this->date_range->iso_end(), 'prev_start' => $this->date_range->previous_period_iso_start(), 'prev_end' => $this->date_range->previous_period_iso_end()])->rows();
32 return self::rows_to_referrers($rows);
33 }
34 private function rows_to_referrers($rows) : array
35 {
36 return \array_map(function ($row) {
37 $has_referrers = !\is_null($row->referrer_ids);
38 if ($has_referrers) {
39 $row->referrer_ids = \explode(',', $row->referrer_ids);
40 }
41 return new Referrer($row);
42 }, $rows);
43 }
44 }
45