PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 4.9.2
WP STAGING – WordPress Backup, Restore, Migration & Clone v4.9.2
4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Framework / Analytics / WithAnalyticsAPI.php
wp-staging / Framework / Analytics Last commit date
Actions 2 weeks ago AnalyticsCleanup.php 4 years ago AnalyticsConsent.php 1 week ago AnalyticsEventDto.php 2 weeks ago AnalyticsEventWithTimeDto.php 9 months ago AnalyticsGenericEventHandler.php 2 months ago AnalyticsSender.php 9 months ago WithAnalyticsAPI.php 9 months ago WithAnalyticsSiteInfo.php 4 months ago
WithAnalyticsAPI.php
55 lines
1 <?php
2
3 namespace WPStaging\Framework\Analytics;
4
5 trait WithAnalyticsAPI
6 {
7 protected function getApiUrl($endpoint)
8 {
9 if ($this->isDev() && !$this->useLiveAnalyticsOnDev()) {
10 $url = 'http://analytics.local:8080';
11 } else {
12 $url = 'https://analytics.wp-staging.com';
13 }
14
15 return $url . '/' . $endpoint;
16 }
17
18 /**
19 * We use the hash of the salt as the identifier, this will only change if the salts changes.
20 *
21 * @return string
22 */
23 protected function getSiteHash()
24 {
25 $hostName = parse_url(get_site_url());
26
27 if (is_array($hostName) && array_key_exists('host', $hostName)) {
28 $hostName = $hostName['host'];
29 } else {
30 $hostName = '';
31 }
32
33 if (defined('AUTH_SALT') && !empty(AUTH_SALT) && AUTH_SALT !== 'put your unique phrase here') {
34 $authSalt = AUTH_SALT;
35 } else {
36 if (!$authSalt = get_option('wpstg_analytics_fallback_site_hash')) {
37 $authSalt = wp_generate_password(32);
38 update_option('wpstg_analytics_fallback_site_hash', $authSalt);
39 }
40 }
41
42 return wp_hash($authSalt . $hostName);
43 }
44
45 protected function isDev(): bool
46 {
47 return defined('WPSTG_IS_DEV') && WPSTG_IS_DEV;
48 }
49
50 protected function useLiveAnalyticsOnDev(): bool
51 {
52 return defined('WPSTG_DEV_LIVE_ANALYTICS') && WPSTG_DEV_LIVE_ANALYTICS;
53 }
54 }
55