PluginProbe
Simple Analytics / 1.56
Simple Analytics v1.56
1.109 1.108 1.107 1.106 1.73 1.74 1.75 1.76 1.77 1.78 1.79 1.8 1.80 1.81 1.82 1.83 1.84 1.85 1.86 1.87 1.88 1.89 1.9 1.90 1.91 All 98 releases
← All changes | simple-analytics.php +48 -24 1.81.56 View file →
@@ -1,14 +1,14 @@
1 1 <?php
2 2 /*
3 3 * Plugin Name: Simple Analytics Official
4 - * Version: 1.8
4 + * Version: 1.27
5 5 * Plugin URI: https://docs.simpleanalytics.com/install-simple-analytics-on-wordpress
6 6 * Description: Embed Simple Analytics script in your WordPress website
7 7 * Author: Simple Analytics
8 8 * Author URI: https://simpleanalytics.com/
9 - * Requires at least: 2.0.0
10 - * Tested up to: 6.0
9 + * Requires at least: 5.2.0
10 + * Tested up to: 6.7
11 11 *
12 12 * Text Domain: simple-analytics
13 13 * Domain Path: /lang/
14 14 *
@@ -16,29 +16,53 @@
16 16 * @author Simple Analytics
17 17 * @since 1.0.0
18 18 */
19 19
20 -if (!defined('ABSPATH')) exit;
20 +defined('\\ABSPATH') || exit;
21 21
22 -$simpleanalytics_script = 'https://scripts.simpleanalyticscdn.com/latest.js';
22 +define('SimpleAnalytics\\PLUGIN_URL', plugin_dir_url(__FILE__));
23 +define('SimpleAnalytics\\PLUGIN_PATH', plugin_dir_path(__FILE__));
24 +define('SimpleAnalytics\\PLUGIN_BASENAME', plugin_basename(__FILE__));
25 +define('SimpleAnalytics\\ENTRYPOINT_FILE', __FILE__);
23 26
24 -function simpleanalytics_warn_not_logging() {
25 - echo "<!-- Simple Analytics: Not logging requests from admins -->\n";
26 -}
27 +/**
28 + * @note Manual loading rather than Composer to avoid potential conflict with plugins/themes that ship older autoloader.
29 + */
30 +require __DIR__ . '/src/Support/SvgIcon.php';
31 +require __DIR__ . '/helpers.php';
32 +require __DIR__ . '/src/PluginLifecycle.php';
33 +require __DIR__ . '/src/Plugin.php';
34 +require __DIR__ . '/src/Setting.php';
35 +require __DIR__ . '/src/SettingName.php';
36 +require __DIR__ . '/src/TrackingPolicy.php';
37 +require __DIR__ . '/src/ScriptManager.php';
38 +require __DIR__ . '/src/Scripts/Contracts/Script.php';
39 +require __DIR__ . '/src/Scripts/Contracts/HideScriptId.php';
40 +require __DIR__ . '/src/Scripts/Contracts/HasAttributes.php';
41 +require __DIR__ . '/src/Scripts/AnalyticsScript.php';
42 +require __DIR__ . '/src/Scripts/AutomatedEventsScript.php';
43 +require __DIR__ . '/src/Scripts/InactiveScript.php';
44 +require __DIR__ . '/src/Actions/Action.php';
45 +require __DIR__ . '/src/Actions/AddInactiveComment.php';
46 +require __DIR__ . '/src/Actions/AddNoScriptTag.php';
47 +require __DIR__ . '/src/Actions/AddPluginSettingsLink.php';
48 +require __DIR__ . '/src/Support/Str.php';
49 +require __DIR__ . '/src/Settings/Block.php';
50 +require __DIR__ . '/src/Settings/Blocks/CalloutBlock.php';
51 +require __DIR__ . '/src/Settings/Concerns/HasDocs.php';
52 +require __DIR__ . '/src/Settings/Concerns/HasPlaceholder.php';
53 +require __DIR__ . '/src/Settings/Concerns/ManagesBlocks.php';
54 +require __DIR__ . '/src/Settings/Concerns/WordPressPageIntegration.php';
55 +require __DIR__ . '/src/Settings/Page.php';
56 +require __DIR__ . '/src/Settings/Blocks/Fields/Field.php';
57 +require __DIR__ . '/src/Settings/Blocks/Fields/Input.php';
58 +require __DIR__ . '/src/Settings/Blocks/Fields/Checkboxes.php';
59 +require __DIR__ . '/src/Settings/Blocks/Fields/Checkbox.php';
60 +require __DIR__ . '/src/Settings/Blocks/Fields/IpList.php';
61 +require __DIR__ . '/src/Settings/Tab.php';
62 +require __DIR__ . '/src/UI/LabelComponent.php';
63 +require __DIR__ . '/src/UI/TabListComponent.php';
64 +require __DIR__ . '/src/UI/PageLayoutComponent.php';
27 65
28 -function simpleanalytics_noscript() {
29 - echo '<noscript><img src="https://queue.simpleanalyticscdn.com/noscript.gif" alt="" referrerpolicy="no-referrer-when-downgrade"></noscript>' . "\n";
30 -}
66 +use SimpleAnalytics\Plugin;
31 67
32 -function simpleanalytics_init() {
33 - global $simpleanalytics_script;
34 - $is_running = !current_user_can('editor') && !current_user_can('administrator');
35 - if ($is_running) {
36 - wp_enqueue_script('simpleanalytics_script', $simpleanalytics_script, array(), null, true);
37 - add_action('wp_footer', 'simpleanalytics_noscript', 10);
38 - } else {
39 - wp_enqueue_script('simpleanalytics_admins', plugins_url('public/js/admins.js', __FILE__), array(), null, true);
40 - add_action('wp_footer', 'simpleanalytics_warn_not_logging', 10);
41 - }
42 -}
43 -
44 -add_action('init', 'simpleanalytics_init');
68 +(new Plugin)->boot();