Version Description
09.12.2022
- Tweak: Added case insensitive flag to define() calls to prevent future PHP warnings.
- Tweak: Disabled some loggers.
- Tweak: Adjusted the woocommerce_ga_disable_tracking filter to only be used if GA is active in the Pixel Manager.
- Tweak: Refactored logging.
- Tweak: Improved a few descriptions.
Download this release
Release Info
Developer | alekv |
Plugin | Pixel Manager for WooCommerce – Track Google Analytics, Google Ads, Facebook and more |
Version | 1.27.9 |
Comparing to | |
See all releases |
Code changes from version 1.27.8 to 1.27.9
- classes/admin/class-admin-rest.php +43 -0
- classes/admin/class-admin.php +2 -1
- classes/admin/class-debug-info.php +2 -2
- classes/admin/class-documentation.php +3 -0
- classes/admin/class-environment-check.php +14 -6
- classes/admin/class-notification-handlers.php +0 -66
- classes/admin/class-notifications.php +167 -130
- classes/admin/class-order-columns.php +1 -1
- classes/class-deprecated-filters.php +11 -0
- classes/class-helpers.php +19 -0
- classes/class-product.php +8 -8
- classes/class-shop.php +4 -4
- classes/pixels/class-pixel-manager.php +4 -8
- classes/pixels/class-shortcodes.php +1 -1
- classes/pixels/google/class-google-pixel-manager.php +1 -1
- classes/pixels/google/class-google.php +1 -5
- css/notifications.css +6 -0
- js/admin/notifications.js +20 -7
- languages/woocommerce-google-adwords-conversion-tracking-tag.pot +203 -197
- readme.txt +10 -1
- vendor/composer/installed.php +2 -2
- wgact.php +13 -16
classes/admin/class-admin-rest.php
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WCPM\Classes\Admin;
|
4 |
+
|
5 |
+
|
6 |
+
if ( !defined( 'ABSPATH' ) ) {
|
7 |
+
exit;
|
8 |
+
// Exit if accessed directly
|
9 |
+
}
|
10 |
+
|
11 |
+
class Admin_REST
|
12 |
+
{
|
13 |
+
protected $rest_namespace = 'pmw/v1' ;
|
14 |
+
private static $instance ;
|
15 |
+
public static function get_instance()
|
16 |
+
{
|
17 |
+
if ( is_null( self::$instance ) ) {
|
18 |
+
self::$instance = new self();
|
19 |
+
}
|
20 |
+
return self::$instance;
|
21 |
+
}
|
22 |
+
|
23 |
+
public function __construct()
|
24 |
+
{
|
25 |
+
add_action( 'rest_api_init', [ $this, 'register_routes' ] );
|
26 |
+
}
|
27 |
+
|
28 |
+
public function register_routes()
|
29 |
+
{
|
30 |
+
register_rest_route( $this->rest_namespace, '/notifications/', [
|
31 |
+
'methods' => 'POST',
|
32 |
+
'callback' => function ( $request ) {
|
33 |
+
$data = $request->get_json_params();
|
34 |
+
if ( 'dismiss_license_expired_notification' === $data['notification'] ) {
|
35 |
+
}
|
36 |
+
},
|
37 |
+
'permission_callback' => function () {
|
38 |
+
return current_user_can( 'manage_options' );
|
39 |
+
},
|
40 |
+
] );
|
41 |
+
}
|
42 |
+
|
43 |
+
}
|
classes/admin/class-admin.php
CHANGED
@@ -4,6 +4,7 @@
|
|
4 |
namespace WCPM\Classes\Admin;
|
5 |
|
6 |
use WCPM\Classes\Helpers ;
|
|
|
7 |
use WCPM\Classes\Pixels\Google\Google ;
|
8 |
use WP_Post ;
|
9 |
|
@@ -30,7 +31,7 @@ class Admin
|
|
30 |
|
31 |
private function __construct()
|
32 |
{
|
33 |
-
$this->options =
|
34 |
$this->plugin_hook = 'woocommerce_page_wpm';
|
35 |
$this->google = new Google( $this->options );
|
36 |
add_action( 'admin_enqueue_scripts', [ $this, 'wpm_admin_scripts' ] );
|
4 |
namespace WCPM\Classes\Admin;
|
5 |
|
6 |
use WCPM\Classes\Helpers ;
|
7 |
+
use WCPM\Classes\Options ;
|
8 |
use WCPM\Classes\Pixels\Google\Google ;
|
9 |
use WP_Post ;
|
10 |
|
31 |
|
32 |
private function __construct()
|
33 |
{
|
34 |
+
$this->options = Options::get_options();
|
35 |
$this->plugin_hook = 'woocommerce_page_wpm';
|
36 |
$this->google = new Google( $this->options );
|
37 |
add_action( 'admin_enqueue_scripts', [ $this, 'wpm_admin_scripts' ] );
|
classes/admin/class-debug-info.php
CHANGED
@@ -443,10 +443,10 @@ class Debug_Info
|
|
443 |
|
444 |
} catch ( \Exception $e ) {
|
445 |
wc_get_logger()->debug( 'Error while trying to connect to ' . $server, [
|
446 |
-
'source' => '
|
447 |
] );
|
448 |
wc_get_logger()->debug( $e, [
|
449 |
-
'source' => '
|
450 |
] );
|
451 |
}
|
452 |
}
|
443 |
|
444 |
} catch ( \Exception $e ) {
|
445 |
wc_get_logger()->debug( 'Error while trying to connect to ' . $server, [
|
446 |
+
'source' => 'PMW',
|
447 |
] );
|
448 |
wc_get_logger()->debug( $e, [
|
449 |
+
'source' => 'PMW',
|
450 |
] );
|
451 |
}
|
452 |
}
|
classes/admin/class-documentation.php
CHANGED
@@ -197,6 +197,9 @@ class Documentation {
|
|
197 |
'duplication_prevention' => [
|
198 |
'default' => '/docs/wpm/shop#order-duplication-prevention',
|
199 |
'wcm' => '/document/pixel-manager-pro-for-woocommerce/shop/#order-duplication-prevention'],
|
|
|
|
|
|
|
200 |
];
|
201 |
|
202 |
if (array_key_exists($key, $documentation_links)) {
|
197 |
'duplication_prevention' => [
|
198 |
'default' => '/docs/wpm/shop#order-duplication-prevention',
|
199 |
'wcm' => '/document/pixel-manager-pro-for-woocommerce/shop/#order-duplication-prevention'],
|
200 |
+
'license-expired-warning' => [
|
201 |
+
'default' => '/docs/wpm/license-management#expired-license-warning',
|
202 |
+
'wcm' => '/'],
|
203 |
];
|
204 |
|
205 |
if (array_key_exists($key, $documentation_links)) {
|
classes/admin/class-environment-check.php
CHANGED
@@ -39,9 +39,19 @@ class Environment_Check {
|
|
39 |
}
|
40 |
}
|
41 |
|
42 |
-
public function is_allowed_notification_page( $page ) {
|
43 |
|
44 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
|
46 |
foreach ($allowed_pages as $allowed_page) {
|
47 |
if (strpos($page, $allowed_page) !== false) {
|
@@ -68,7 +78,7 @@ class Environment_Check {
|
|
68 |
return true;
|
69 |
}
|
70 |
|
71 |
-
public function is_not_allowed_notification_page( $page ) {
|
72 |
return !$this->is_allowed_notification_page($page);
|
73 |
}
|
74 |
|
@@ -1059,12 +1069,10 @@ class Environment_Check {
|
|
1059 |
}
|
1060 |
|
1061 |
/**
|
1062 |
-
* WooCommerce Gutenberg Blocks Google Analytics Tracking
|
1063 |
-
*
|
1064 |
* Disable gtag if Google Analytics is active in PMW
|
1065 |
*/
|
1066 |
|
1067 |
-
if ($this->
|
1068 |
add_filter('woocommerce_ga_disable_tracking', '__return_true');
|
1069 |
}
|
1070 |
}
|
39 |
}
|
40 |
}
|
41 |
|
42 |
+
public function is_allowed_notification_page( $page = null ) {
|
43 |
|
44 |
+
global $pagenow;
|
45 |
+
|
46 |
+
if (is_null($page)) {
|
47 |
+
$page = $pagenow;
|
48 |
+
}
|
49 |
+
|
50 |
+
// Don't check for the plugin settings page. Notifications have to be handled there.
|
51 |
+
$allowed_pages = [
|
52 |
+
'index.php',
|
53 |
+
'dashboard'
|
54 |
+
];
|
55 |
|
56 |
foreach ($allowed_pages as $allowed_page) {
|
57 |
if (strpos($page, $allowed_page) !== false) {
|
78 |
return true;
|
79 |
}
|
80 |
|
81 |
+
public function is_not_allowed_notification_page( $page = null ) {
|
82 |
return !$this->is_allowed_notification_page($page);
|
83 |
}
|
84 |
|
1069 |
}
|
1070 |
|
1071 |
/**
|
|
|
|
|
1072 |
* Disable gtag if Google Analytics is active in PMW
|
1073 |
*/
|
1074 |
|
1075 |
+
if ($this->is_pmw_google_analytics_active()) {
|
1076 |
add_filter('woocommerce_ga_disable_tracking', '__return_true');
|
1077 |
}
|
1078 |
}
|
classes/admin/class-notification-handlers.php
DELETED
@@ -1,66 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
namespace WCPM\Classes\Admin;
|
4 |
-
|
5 |
-
use WCPM\Classes\Helpers;
|
6 |
-
|
7 |
-
if (!defined('ABSPATH')) {
|
8 |
-
exit; // Exit if accessed directly
|
9 |
-
}
|
10 |
-
|
11 |
-
class Notification_Handlers {
|
12 |
-
|
13 |
-
private static $instance;
|
14 |
-
|
15 |
-
public static function get_instance() {
|
16 |
-
if (is_null(self::$instance)) {
|
17 |
-
self::$instance = new self();
|
18 |
-
}
|
19 |
-
return self::$instance;
|
20 |
-
}
|
21 |
-
|
22 |
-
private function __construct() {
|
23 |
-
|
24 |
-
add_action('admin_enqueue_scripts', [$this, 'enqueue_admin_notification_scripts']);
|
25 |
-
|
26 |
-
add_action('wp_ajax_dismiss_pmw_payment_gateway_notification', [$this, 'dismiss_payment_gateway_notification']);
|
27 |
-
}
|
28 |
-
|
29 |
-
public function enqueue_admin_notification_scripts() {
|
30 |
-
|
31 |
-
// error_log('enqueue_admin_notification_scripts');
|
32 |
-
wp_enqueue_script(
|
33 |
-
'pmw-admin-notifications',
|
34 |
-
WPM_PLUGIN_DIR_PATH . '/js/admin/notifications.js',
|
35 |
-
['jquery'],
|
36 |
-
WPM_CURRENT_VERSION,
|
37 |
-
true
|
38 |
-
);
|
39 |
-
|
40 |
-
wp_localize_script(
|
41 |
-
'pmw-admin-notifications',
|
42 |
-
'ajax_var', [
|
43 |
-
'url' => admin_url('admin-ajax.php'),
|
44 |
-
'nonce' => wp_create_nonce('ajax-nonce')
|
45 |
-
]);
|
46 |
-
}
|
47 |
-
|
48 |
-
public function dismiss_payment_gateway_notification() {
|
49 |
-
|
50 |
-
if (!current_user_can('manage_options')) {
|
51 |
-
wp_die();
|
52 |
-
}
|
53 |
-
|
54 |
-
$_post = Helpers::get_input_vars(INPUT_POST);
|
55 |
-
|
56 |
-
// Verify nonce
|
57 |
-
if (!isset($_post['nonce']) || !wp_verify_nonce($_post['nonce'], 'ajax-nonce')) {
|
58 |
-
wp_die();
|
59 |
-
}
|
60 |
-
|
61 |
-
error_log('dismiss_payment_gateway_notification');
|
62 |
-
|
63 |
-
|
64 |
-
// update_option('my-acf-notice-dismissed', 1);
|
65 |
-
}
|
66 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
classes/admin/class-notifications.php
CHANGED
@@ -2,148 +2,174 @@
|
|
2 |
|
3 |
namespace WCPM\Classes\Admin;
|
4 |
|
5 |
-
|
6 |
-
exit; // Exit if accessed directly
|
7 |
-
}
|
8 |
-
|
9 |
-
class Notifications {
|
10 |
-
|
11 |
-
// Only show the notification on the dashboard and on the PMW settings page
|
12 |
-
private static function is_not_allowed_to_show_pmw_notification() {
|
13 |
-
return !self::is_allowed_to_show_pmw_notification();
|
14 |
-
}
|
15 |
-
|
16 |
-
private static function is_allowed_to_show_pmw_notification() {
|
17 |
-
|
18 |
-
if (!self::can_current_page_show_pmw_notification()) {
|
19 |
-
return false;
|
20 |
-
}
|
21 |
-
|
22 |
-
// Only show the notifications to admins and shop managers
|
23 |
-
$user = wp_get_current_user();
|
24 |
-
if (!in_array('administrator', $user->roles, true) && !in_array('shop_manager', $user->roles, true)) {
|
25 |
-
return false;
|
26 |
-
}
|
27 |
-
|
28 |
-
return true;
|
29 |
-
}
|
30 |
-
|
31 |
-
public static function can_current_page_show_pmw_notification() {
|
32 |
-
|
33 |
-
global $hook_suffix;
|
34 |
-
|
35 |
-
$allowed_pages = ['page_wpm', 'index.php', 'dashboard'];
|
36 |
-
|
37 |
-
/**
|
38 |
-
* We can't use in_array because woocommerce_page_wpm
|
39 |
-
* is malformed on certain installs, but the substring
|
40 |
-
* page_wpm is fine. So we need to search for partial
|
41 |
-
* matches.
|
42 |
-
* */
|
43 |
-
foreach ($allowed_pages as $allowed_page) {
|
44 |
-
if (strpos($hook_suffix, $allowed_page) !== false) {
|
45 |
-
return true;
|
46 |
-
}
|
47 |
-
}
|
48 |
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
// Only show the warning on the dashboard and on the PMW settings page
|
55 |
-
if (self::is_not_allowed_to_show_pmw_notification()) {
|
56 |
-
return;
|
57 |
-
}
|
58 |
-
|
59 |
-
$pg_report = get_transient('pmw_tracking_accuracy_analysis_weighted');
|
60 |
-
|
61 |
-
// Only run if the weighted payment gateway analysis has been created
|
62 |
-
if (!$pg_report) {
|
63 |
-
return;
|
64 |
-
}
|
65 |
-
|
66 |
-
// Only run if the total of the PGs is in status warning
|
67 |
-
|
68 |
-
// Only run if the user has not dismissed the notification for a specific time period
|
69 |
|
70 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
<div class="pmw-payment-gateway-notification notice notice-error is-dismissible">
|
72 |
<p>
|
73 |
-
<?php
|
74 |
-
|
75 |
-
|
76 |
</p>
|
77 |
</div>
|
78 |
-
<?php
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
<p>
|
94 |
-
<a href="<?php echo esc_url(Documentation::get_link('payment-gateways')); ?>"
|
95 |
-
target="_blank">
|
96 |
-
<?php esc_html_e('Learn more', 'woocommerce-google-adwords-conversion-tracking-tag'); ?>
|
97 |
-
</a>
|
98 |
-
</p>
|
99 |
-
<p>
|
100 |
-
<a href="<?php echo esc_url(get_admin_url() . 'admin.php?page=wc-settings&tab=checkout'); ?>">
|
101 |
-
<?php esc_html_e('Open the WooCommerce payment methods settings', 'woocommerce-google-adwords-conversion-tracking-tag'); ?>
|
102 |
-
</a>
|
103 |
-
</p>
|
104 |
-
|
105 |
-
<div style=" margin-bottom: 10px; display: flex; justify-content: space-between">
|
106 |
-
|
107 |
-
<div id="wpm-paypal-standard-error-dismissal-button" class="button" style="white-space:normal;">
|
108 |
-
<?php esc_html_e('Click here to dismiss this warning forever', 'woocommerce-google-adwords-conversion-tracking-tag'); ?>
|
109 |
-
</div>
|
110 |
-
<div style="white-space:normal; bottom:0; right: 0; margin-bottom: 0; margin-right: 5px;align-self: flex-end;">
|
111 |
-
<a href="<?php echo esc_url(Documentation::get_link('the_dismiss_button_doesnt_work_why')); ?>"
|
112 |
-
target="_blank">
|
113 |
-
<?php esc_html_e('If the dismiss button is not working, here\'s why >>', 'woocommerce-google-adwords-conversion-tracking-tag'); ?>
|
114 |
-
</a>
|
115 |
-
</div>
|
116 |
-
</div>
|
117 |
-
|
118 |
-
</div>
|
119 |
-
<?php
|
120 |
-
}
|
121 |
-
|
122 |
-
public static function plugin_is_incompatible( $name, $version, $slug, $link = '', $wpm_doc_link = '' ) {
|
123 |
-
?>
|
124 |
-
<div class="notice notice-error <?php echo esc_js($slug); ?>-incompatible-plugin-error">
|
125 |
<p>
|
126 |
<span>
|
127 |
-
<?php
|
|
|
|
|
128 |
</span>
|
129 |
<span>
|
130 |
-
<a href="<?php
|
131 |
-
|
|
|
|
|
|
|
|
|
132 |
</a>
|
133 |
-
(<?php
|
|
|
|
|
|
|
|
|
134 |
</span>
|
135 |
<br>
|
136 |
<span>
|
137 |
|
138 |
-
<?php
|
|
|
|
|
139 |
</span><br>
|
140 |
<span>
|
141 |
|
142 |
-
<?php
|
|
|
|
|
143 |
</span><a
|
144 |
-
href="<?php
|
|
|
|
|
145 |
target="_blank">
|
146 |
-
<?php
|
|
|
|
|
147 |
</a><br>
|
148 |
</p>
|
149 |
<p>
|
@@ -151,20 +177,31 @@ class Notifications {
|
|
151 |
</p>
|
152 |
<div style="margin-bottom: 10px; display: flex; justify-content: space-between">
|
153 |
|
154 |
-
<div id="<?php
|
|
|
|
|
155 |
class="button incompatible-plugin-error-dismissal-button" style="white-space:normal;"
|
156 |
-
data-plugin-slug="<?php
|
157 |
-
|
|
|
|
|
|
|
|
|
158 |
</div>
|
159 |
<div style="white-space:normal; bottom:0; right: 0; margin-bottom: 0; margin-right: 5px;align-self: flex-end;">
|
160 |
-
<a href="<?php
|
|
|
|
|
161 |
target="_blank">
|
162 |
-
<?php
|
|
|
|
|
163 |
</a>
|
164 |
</div>
|
165 |
</div>
|
166 |
|
167 |
</div>
|
168 |
-
<?php
|
169 |
-
|
170 |
-
|
|
2 |
|
3 |
namespace WCPM\Classes\Admin;
|
4 |
|
5 |
+
use WCPM\Classes\Helpers ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
7 |
+
if ( !defined( 'ABSPATH' ) ) {
|
8 |
+
exit;
|
9 |
+
// Exit if accessed directly
|
10 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
12 |
+
class Notifications
|
13 |
+
{
|
14 |
+
private static $instance ;
|
15 |
+
public static function get_instance()
|
16 |
+
{
|
17 |
+
if ( is_null( self::$instance ) ) {
|
18 |
+
self::$instance = new self();
|
19 |
+
}
|
20 |
+
return self::$instance;
|
21 |
+
}
|
22 |
+
|
23 |
+
public function __construct()
|
24 |
+
{
|
25 |
+
add_action( 'admin_enqueue_scripts', [ __CLASS__, 'inject_admin_scripts' ] );
|
26 |
+
add_action( 'admin_enqueue_scripts', [ __CLASS__, 'wpm_admin_css' ] );
|
27 |
+
if ( Environment_Check::get_instance()->is_allowed_notification_page() ) {
|
28 |
+
}
|
29 |
+
}
|
30 |
+
|
31 |
+
public static function inject_admin_scripts()
|
32 |
+
{
|
33 |
+
wp_enqueue_script(
|
34 |
+
'pmw-notifications',
|
35 |
+
WPM_PLUGIN_DIR_PATH . 'js/admin/notifications.js',
|
36 |
+
[ 'jquery' ],
|
37 |
+
WPM_CURRENT_VERSION,
|
38 |
+
true
|
39 |
+
);
|
40 |
+
wp_localize_script( 'pmw-notifications', 'pmwNotificationsApi', [
|
41 |
+
'root' => esc_url_raw( rest_url() ),
|
42 |
+
'nonce' => wp_create_nonce( 'wp_rest' ),
|
43 |
+
] );
|
44 |
+
}
|
45 |
+
|
46 |
+
public static function wpm_admin_css( $hook_suffix )
|
47 |
+
{
|
48 |
+
// Only output the css on PMW pages and the order page
|
49 |
+
// if (self::is_not_allowed_to_show_pmw_notification()) {
|
50 |
+
// return;
|
51 |
+
// }
|
52 |
+
wp_enqueue_style(
|
53 |
+
'pmw-notifications-css',
|
54 |
+
WPM_PLUGIN_DIR_PATH . 'css/notifications.css',
|
55 |
+
[],
|
56 |
+
WPM_CURRENT_VERSION
|
57 |
+
);
|
58 |
+
}
|
59 |
+
|
60 |
+
// Only show the notification on the dashboard and on the PMW settings page
|
61 |
+
private static function is_not_allowed_to_show_pmw_notification()
|
62 |
+
{
|
63 |
+
return !self::is_allowed_to_show_pmw_notification();
|
64 |
+
}
|
65 |
+
|
66 |
+
private static function is_allowed_to_show_pmw_notification()
|
67 |
+
{
|
68 |
+
if ( !self::can_current_page_show_pmw_notification() ) {
|
69 |
+
return false;
|
70 |
+
}
|
71 |
+
// Only show the notifications to admins and shop managers
|
72 |
+
$user = wp_get_current_user();
|
73 |
+
if ( !in_array( 'administrator', $user->roles, true ) && !in_array( 'shop_manager', $user->roles, true ) ) {
|
74 |
+
return false;
|
75 |
+
}
|
76 |
+
return true;
|
77 |
+
}
|
78 |
+
|
79 |
+
public static function can_current_page_show_pmw_notification()
|
80 |
+
{
|
81 |
+
global $hook_suffix ;
|
82 |
+
$allowed_pages = [ 'page_wpm', 'index.php', 'dashboard' ];
|
83 |
+
/**
|
84 |
+
* We can't use in_array because woocommerce_page_wpm
|
85 |
+
* is malformed on certain installs, but the substring
|
86 |
+
* page_wpm is fine. So we need to search for partial
|
87 |
+
* matches.
|
88 |
+
* */
|
89 |
+
foreach ( $allowed_pages as $allowed_page ) {
|
90 |
+
if ( strpos( $hook_suffix, $allowed_page ) !== false ) {
|
91 |
+
return true;
|
92 |
+
}
|
93 |
+
}
|
94 |
+
return false;
|
95 |
+
}
|
96 |
+
|
97 |
+
public static function payment_gateway_accuracy_warning()
|
98 |
+
{
|
99 |
+
// Only show the warning on the dashboard and on the PMW settings page
|
100 |
+
if ( self::is_not_allowed_to_show_pmw_notification() ) {
|
101 |
+
return;
|
102 |
+
}
|
103 |
+
$pg_report = get_transient( 'pmw_tracking_accuracy_analysis_weighted' );
|
104 |
+
// Only run if the weighted payment gateway analysis has been created
|
105 |
+
if ( !$pg_report ) {
|
106 |
+
return;
|
107 |
+
}
|
108 |
+
// Only run if the total of the PGs is in status warning
|
109 |
+
// Only run if the user has not dismissed the notification for a specific time period
|
110 |
+
?>
|
111 |
<div class="pmw-payment-gateway-notification notice notice-error is-dismissible">
|
112 |
<p>
|
113 |
+
<?php
|
114 |
+
esc_html_e( 'Payment Gateway Accuracy Warning', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
115 |
+
?>
|
116 |
</p>
|
117 |
</div>
|
118 |
+
<?php
|
119 |
+
}
|
120 |
+
|
121 |
+
public static function plugin_is_incompatible(
|
122 |
+
$name,
|
123 |
+
$version,
|
124 |
+
$slug,
|
125 |
+
$link = '',
|
126 |
+
$wpm_doc_link = ''
|
127 |
+
)
|
128 |
+
{
|
129 |
+
?>
|
130 |
+
<div class="notice notice-error <?php
|
131 |
+
echo esc_js( $slug ) ;
|
132 |
+
?>-incompatible-plugin-error">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
<p>
|
134 |
<span>
|
135 |
+
<?php
|
136 |
+
esc_html_e( 'The following plugin is not compatible with the Pixel Manager for WooCommerce: ', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
137 |
+
?>
|
138 |
</span>
|
139 |
<span>
|
140 |
+
<a href="<?php
|
141 |
+
echo esc_url( $link ) ;
|
142 |
+
?>" target="_blank">
|
143 |
+
<?php
|
144 |
+
echo esc_js( $name ) ;
|
145 |
+
?>
|
146 |
</a>
|
147 |
+
(<?php
|
148 |
+
esc_html_e( 'Version', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
149 |
+
?>: <?php
|
150 |
+
echo esc_js( $version ) ;
|
151 |
+
?>)
|
152 |
</span>
|
153 |
<br>
|
154 |
<span>
|
155 |
|
156 |
+
<?php
|
157 |
+
esc_html_e( 'Please disable the plugin as soon as possible.', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
158 |
+
?>
|
159 |
</span><br>
|
160 |
<span>
|
161 |
|
162 |
+
<?php
|
163 |
+
esc_html_e( 'Find more information about the the reason in our documentation: ', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
164 |
+
?>
|
165 |
</span><a
|
166 |
+
href="<?php
|
167 |
+
echo esc_url( $wpm_doc_link ) ;
|
168 |
+
?>"
|
169 |
target="_blank">
|
170 |
+
<?php
|
171 |
+
esc_html_e( 'Learn more', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
172 |
+
?>
|
173 |
</a><br>
|
174 |
</p>
|
175 |
<p>
|
177 |
</p>
|
178 |
<div style="margin-bottom: 10px; display: flex; justify-content: space-between">
|
179 |
|
180 |
+
<div id="<?php
|
181 |
+
echo esc_js( $slug ) ;
|
182 |
+
?>-incompatible-plugin-error-dismissal-button"
|
183 |
class="button incompatible-plugin-error-dismissal-button" style="white-space:normal;"
|
184 |
+
data-plugin-slug="<?php
|
185 |
+
echo esc_js( $slug ) ;
|
186 |
+
?>">
|
187 |
+
<?php
|
188 |
+
esc_html_e( 'Click here to dismiss this warning forever', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
189 |
+
?>
|
190 |
</div>
|
191 |
<div style="white-space:normal; bottom:0; right: 0; margin-bottom: 0; margin-right: 5px;align-self: flex-end;">
|
192 |
+
<a href="<?php
|
193 |
+
echo esc_url( Documentation::get_link( 'the_dismiss_button_doesnt_work_why' ) ) ;
|
194 |
+
?>"
|
195 |
target="_blank">
|
196 |
+
<?php
|
197 |
+
esc_html_e( 'If the dismiss button is not working, here\'s why >>', 'woocommerce-google-adwords-conversion-tracking-tag' );
|
198 |
+
?>
|
199 |
</a>
|
200 |
</div>
|
201 |
</div>
|
202 |
|
203 |
</div>
|
204 |
+
<?php
|
205 |
+
}
|
206 |
+
|
207 |
+
}
|
classes/admin/class-order-columns.php
CHANGED
@@ -290,7 +290,7 @@ class Order_Columns {
|
|
290 |
<?php
|
291 |
|
292 |
} elseif ($order->get_created_via() !== 'checkout') {
|
293 |
-
$text = __('This order was created by a shop manager. Only orders created by customers are analysed.', 'woocommerce-google-adwords-conversion-tracking-tag');
|
294 |
?>
|
295 |
<div aria-hidden="true" title="<?php esc_html_e($text); ?>" class="pmw-monitored-icon none">
|
296 |
<span class="screen-reader-text"><?php esc_html_e($text); ?></span>
|
290 |
<?php
|
291 |
|
292 |
} elseif ($order->get_created_via() !== 'checkout') {
|
293 |
+
$text = __('This order was either created by a shop manager, or automatically added by an extension like a subscription plugin. Only orders created by customers are analysed.', 'woocommerce-google-adwords-conversion-tracking-tag');
|
294 |
?>
|
295 |
<div aria-hidden="true" title="<?php esc_html_e($text); ?>" class="pmw-monitored-icon none">
|
296 |
<span class="screen-reader-text"><?php esc_html_e($text); ?></span>
|
classes/class-deprecated-filters.php
CHANGED
@@ -25,5 +25,16 @@ class Deprecated_Filters {
|
|
25 |
'This filter has been deprecated without replacement'
|
26 |
);
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
}
|
29 |
}
|
25 |
'This filter has been deprecated without replacement'
|
26 |
);
|
27 |
|
28 |
+
/**
|
29 |
+
* GA3 MP logger
|
30 |
+
*/
|
31 |
+
$ga3_mp_logger = apply_filters_deprecated('wooptpm_send_http_api_ga_ua_requests_blocking', [false], '1.13.0', 'wpm_send_http_api_ga_ua_requests_blocking');
|
32 |
+
apply_filters_deprecated('wpm_send_http_api_ga_ua_requests_blocking', [$ga3_mp_logger], '1.27.9', 'pmw_http_send_hit_logger');
|
33 |
+
|
34 |
+
/**
|
35 |
+
* GA4 MP logger
|
36 |
+
*/
|
37 |
+
$ga4_mp_logger = apply_filters_deprecated('wooptpm_send_http_api_ga_4_requests_blocking', [false], '1.13.0', 'wpm_send_http_api_ga_4_requests_blocking');
|
38 |
+
apply_filters_deprecated('wpm_send_http_api_ga_4_requests_blocking', [$ga4_mp_logger], '1.27.9', 'pmw_http_send_hit_logger');
|
39 |
}
|
40 |
}
|
classes/class-helpers.php
CHANGED
@@ -192,4 +192,23 @@ class Helpers {
|
|
192 |
// Geolocate the user IP and return the country code
|
193 |
return self::get_visitor_country();
|
194 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
}
|
192 |
// Geolocate the user IP and return the country code
|
193 |
return self::get_visitor_country();
|
194 |
}
|
195 |
+
|
196 |
+
public static function is_dashboard() {
|
197 |
+
|
198 |
+
global $pagenow;
|
199 |
+
|
200 |
+
// Don't check for the plugin settings page. Notifications have to be handled there.
|
201 |
+
$allowed_pages = [
|
202 |
+
'index.php',
|
203 |
+
'dashboard'
|
204 |
+
];
|
205 |
+
|
206 |
+
foreach ($allowed_pages as $allowed_page) {
|
207 |
+
if (strpos($pagenow, $allowed_page) !== false) {
|
208 |
+
return true;
|
209 |
+
}
|
210 |
+
}
|
211 |
+
|
212 |
+
return false;
|
213 |
+
}
|
214 |
}
|
classes/class-product.php
CHANGED
@@ -92,10 +92,10 @@ class Product {
|
|
92 |
|
93 |
public static function log_problematic_product_id( $product_id = 0 ) {
|
94 |
|
95 |
-
wc_get_logger()->debug(
|
96 |
-
'WooCommerce detects the page ID ' . $product_id . ' as product, but when invoked by wc_get_product( ' . $product_id . ' ) it returns no product object',
|
97 |
-
['source' => '
|
98 |
-
);
|
99 |
}
|
100 |
|
101 |
public static function get_product_details_for_datalayer( $product ) {
|
@@ -151,7 +151,7 @@ class Product {
|
|
151 |
$product_details['brand'] = self::get_brand_name($parent_product->get_id());
|
152 |
} else {
|
153 |
|
154 |
-
wc_get_logger()->debug('Variation ' . $product->get_id() . ' doesn\'t link to a valid parent product.', ['source' => '
|
155 |
}
|
156 |
|
157 |
$product_details['variant'] = self::get_formatted_variant_text($product);
|
@@ -284,7 +284,7 @@ class Product {
|
|
284 |
|
285 |
wc_get_logger()->debug(
|
286 |
'WooCommerce detects the following product as product , but when invoked by wc_get_product( ' . $product->get_id() . ' ) it returns no product object',
|
287 |
-
['source' => '
|
288 |
);
|
289 |
}
|
290 |
|
@@ -301,7 +301,7 @@ class Product {
|
|
301 |
|
302 |
if (!is_object($product)) {
|
303 |
|
304 |
-
wc_get_logger()->debug('get_order_item_data received an order item which is not a valid product: ' . $order_item->get_id(), ['source' => '
|
305 |
return [];
|
306 |
}
|
307 |
|
@@ -333,7 +333,7 @@ class Product {
|
|
333 |
public static function get_product_data_layer_script( $product, $set_position = true, $meta_tag = false ) {
|
334 |
|
335 |
if (!is_object($product)) {
|
336 |
-
wc_get_logger()->debug('get_product_data_layer_script received an invalid product', ['source' => '
|
337 |
return '';
|
338 |
}
|
339 |
|
92 |
|
93 |
public static function log_problematic_product_id( $product_id = 0 ) {
|
94 |
|
95 |
+
// wc_get_logger()->debug(
|
96 |
+
// 'WooCommerce detects the page ID ' . $product_id . ' as product, but when invoked by wc_get_product( ' . $product_id . ' ) it returns no product object',
|
97 |
+
// ['source' => 'PMW']
|
98 |
+
// );
|
99 |
}
|
100 |
|
101 |
public static function get_product_details_for_datalayer( $product ) {
|
151 |
$product_details['brand'] = self::get_brand_name($parent_product->get_id());
|
152 |
} else {
|
153 |
|
154 |
+
wc_get_logger()->debug('Variation ' . $product->get_id() . ' doesn\'t link to a valid parent product.', ['source' => 'PMW']);
|
155 |
}
|
156 |
|
157 |
$product_details['variant'] = self::get_formatted_variant_text($product);
|
284 |
|
285 |
wc_get_logger()->debug(
|
286 |
'WooCommerce detects the following product as product , but when invoked by wc_get_product( ' . $product->get_id() . ' ) it returns no product object',
|
287 |
+
['source' => 'PMW']
|
288 |
);
|
289 |
}
|
290 |
|
301 |
|
302 |
if (!is_object($product)) {
|
303 |
|
304 |
+
// wc_get_logger()->debug('get_order_item_data received an order item which is not a valid product: ' . $order_item->get_id(), ['source' => 'PMW']);
|
305 |
return [];
|
306 |
}
|
307 |
|
333 |
public static function get_product_data_layer_script( $product, $set_position = true, $meta_tag = false ) {
|
334 |
|
335 |
if (!is_object($product)) {
|
336 |
+
wc_get_logger()->debug('get_product_data_layer_script received an invalid product', ['source' => 'PMW']);
|
337 |
return '';
|
338 |
}
|
339 |
|
classes/class-shop.php
CHANGED
@@ -433,12 +433,12 @@ class Shop
|
|
433 |
}
|
434 |
|
435 |
wc_get_logger()->debug( 'URL order key: ' . $order_key, [
|
436 |
-
'source' => '
|
437 |
] );
|
438 |
return wc_get_order( wc_get_order_id_by_order_key( $order_key ) );
|
439 |
} else {
|
440 |
wc_get_logger()->debug( 'WooCommerce couldn\'t retrieve the order ID from order key in the URL', [
|
441 |
-
'source' => '
|
442 |
] );
|
443 |
return false;
|
444 |
}
|
@@ -457,10 +457,10 @@ class Shop
|
|
457 |
return wc_get_order( $order_id );
|
458 |
} else {
|
459 |
wc_get_logger()->debug( 'WooCommerce couldn\'t retrieve the order ID from $wp->query_vars[\'order-received\']', [
|
460 |
-
'source' => '
|
461 |
] );
|
462 |
wc_get_logger()->debug( print_r( $wp->query_vars, true ), [
|
463 |
-
'source' => '
|
464 |
] );
|
465 |
return false;
|
466 |
}
|
433 |
}
|
434 |
|
435 |
wc_get_logger()->debug( 'URL order key: ' . $order_key, [
|
436 |
+
'source' => 'PMW',
|
437 |
] );
|
438 |
return wc_get_order( wc_get_order_id_by_order_key( $order_key ) );
|
439 |
} else {
|
440 |
wc_get_logger()->debug( 'WooCommerce couldn\'t retrieve the order ID from order key in the URL', [
|
441 |
+
'source' => 'PMW',
|
442 |
] );
|
443 |
return false;
|
444 |
}
|
457 |
return wc_get_order( $order_id );
|
458 |
} else {
|
459 |
wc_get_logger()->debug( 'WooCommerce couldn\'t retrieve the order ID from $wp->query_vars[\'order-received\']', [
|
460 |
+
'source' => 'PMW',
|
461 |
] );
|
462 |
wc_get_logger()->debug( print_r( $wp->query_vars, true ), [
|
463 |
+
'source' => 'PMW',
|
464 |
] );
|
465 |
return false;
|
466 |
}
|
classes/pixels/class-pixel-manager.php
CHANGED
@@ -419,7 +419,7 @@ class Pixel_Manager
|
|
419 |
}
|
420 |
// Validate imported options
|
421 |
if ( !Validations::validate_imported_options( $options ) ) {
|
422 |
-
// wc_get_logger()->error('Invalid Options. Options not saved', ['source' => '
|
423 |
wp_send_json_error( [
|
424 |
'message' => 'Invalid options. Didn\'t pass validation.',
|
425 |
] );
|
@@ -524,7 +524,7 @@ class Pixel_Manager
|
|
524 |
Product::get_product_data_layer_script( $product, false, true );
|
525 |
} else {
|
526 |
wc_get_logger()->debug( 'woocommerce_inject_product_data_on_product_page provided no product on a product page: .' . get_the_id(), [
|
527 |
-
'source' => '
|
528 |
] );
|
529 |
}
|
530 |
|
@@ -1178,7 +1178,7 @@ class Pixel_Manager
|
|
1178 |
$data['cart'][$product->get_id()]['brand'] = Product::get_brand_name( $parent_product->get_id() );
|
1179 |
} else {
|
1180 |
wc_get_logger()->debug( 'Variation ' . $product->get_id() . ' doesn\'t link to a valid parent product.', [
|
1181 |
-
'source' => '
|
1182 |
] );
|
1183 |
}
|
1184 |
|
@@ -1220,14 +1220,10 @@ class Pixel_Manager
|
|
1220 |
continue;
|
1221 |
}
|
1222 |
$product = wc_get_product( $product_id );
|
1223 |
-
|
1224 |
if ( !is_object( $product ) ) {
|
1225 |
-
wc_get_logger()->debug(
|
1226 |
-
'source' => 'wpm',
|
1227 |
-
] );
|
1228 |
continue;
|
1229 |
}
|
1230 |
-
|
1231 |
$products[$product_id] = Product::get_product_details_for_datalayer( $product );
|
1232 |
}
|
1233 |
return $products;
|
419 |
}
|
420 |
// Validate imported options
|
421 |
if ( !Validations::validate_imported_options( $options ) ) {
|
422 |
+
// wc_get_logger()->error('Invalid Options. Options not saved', ['source' => 'PMW']);
|
423 |
wp_send_json_error( [
|
424 |
'message' => 'Invalid options. Didn\'t pass validation.',
|
425 |
] );
|
524 |
Product::get_product_data_layer_script( $product, false, true );
|
525 |
} else {
|
526 |
wc_get_logger()->debug( 'woocommerce_inject_product_data_on_product_page provided no product on a product page: .' . get_the_id(), [
|
527 |
+
'source' => 'PMW',
|
528 |
] );
|
529 |
}
|
530 |
|
1178 |
$data['cart'][$product->get_id()]['brand'] = Product::get_brand_name( $parent_product->get_id() );
|
1179 |
} else {
|
1180 |
wc_get_logger()->debug( 'Variation ' . $product->get_id() . ' doesn\'t link to a valid parent product.', [
|
1181 |
+
'source' => 'PMW',
|
1182 |
] );
|
1183 |
}
|
1184 |
|
1220 |
continue;
|
1221 |
}
|
1222 |
$product = wc_get_product( $product_id );
|
|
|
1223 |
if ( !is_object( $product ) ) {
|
1224 |
+
// wc_get_logger()->debug('ajax_pmw_get_product_ids received an invalid product', ['source' => 'PMW']);
|
|
|
|
|
1225 |
continue;
|
1226 |
}
|
|
|
1227 |
$products[$product_id] = Product::get_product_details_for_datalayer( $product );
|
1228 |
}
|
1229 |
return $products;
|
classes/pixels/class-shortcodes.php
CHANGED
@@ -35,7 +35,7 @@ class Shortcodes extends Pixel {
|
|
35 |
$product = wc_get_product($shortcode_attributes['product-id']);
|
36 |
|
37 |
if (!is_object($product)) {
|
38 |
-
wc_get_logger()->debug('get_product_data_layer_script received an invalid product', ['source' => '
|
39 |
return;
|
40 |
}
|
41 |
|
35 |
$product = wc_get_product($shortcode_attributes['product-id']);
|
36 |
|
37 |
if (!is_object($product)) {
|
38 |
+
wc_get_logger()->debug('get_product_data_layer_script received an invalid product', ['source' => 'PMW']);
|
39 |
return;
|
40 |
}
|
41 |
|
classes/pixels/google/class-google-pixel-manager.php
CHANGED
@@ -49,7 +49,7 @@ class Google_Pixel_Manager
|
|
49 |
$user_info = get_user_by( 'id', Shop::wpm_get_order_user_id( $order ) );
|
50 |
if ( is_object( $user_info ) ) {
|
51 |
wc_get_logger()->debug( 'Prevented order ID ' . $order->get_id() . ' to be reported through the Measurement Protocol for user ' . $user_info->user_login . ' (roles: ' . implode( ', ', $user_info->roles ) . ')', [
|
52 |
-
'source' => '
|
53 |
] );
|
54 |
}
|
55 |
}
|
49 |
$user_info = get_user_by( 'id', Shop::wpm_get_order_user_id( $order ) );
|
50 |
if ( is_object( $user_info ) ) {
|
51 |
wc_get_logger()->debug( 'Prevented order ID ' . $order->get_id() . ' to be reported through the Measurement Protocol for user ' . $user_info->user_login . ' (roles: ' . implode( ', ', $user_info->roles ) . ')', [
|
52 |
+
'source' => 'PMW',
|
53 |
] );
|
54 |
}
|
55 |
}
|
classes/pixels/google/class-google.php
CHANGED
@@ -37,14 +37,10 @@ class Google extends Pixel
|
|
37 |
public function get_order_item_data( $order_item )
|
38 |
{
|
39 |
$product = $order_item->get_product();
|
40 |
-
|
41 |
if ( !is_object( $product ) ) {
|
42 |
-
wc_get_logger()->debug(
|
43 |
-
'source' => 'wpm',
|
44 |
-
] );
|
45 |
return [];
|
46 |
}
|
47 |
-
|
48 |
$dyn_r_ids = Product::get_dyn_r_ids( $product );
|
49 |
/**
|
50 |
* Get the name of the product.
|
37 |
public function get_order_item_data( $order_item )
|
38 |
{
|
39 |
$product = $order_item->get_product();
|
|
|
40 |
if ( !is_object( $product ) ) {
|
41 |
+
// wc_get_logger()->debug('get_order_item_data received an order item which is not a valid product: ' . $order_item->get_id(), ['source' => 'PMW']);
|
|
|
|
|
42 |
return [];
|
43 |
}
|
|
|
44 |
$dyn_r_ids = Product::get_dyn_r_ids( $product );
|
45 |
/**
|
46 |
* Get the name of the product.
|
css/notifications.css
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#pmw-purchase-new-license-button {
|
2 |
+
/* background half transparent light green */
|
3 |
+
/*background: rgba(0, 255, 0, 0.5);*/
|
4 |
+
/* border half transparent light green */
|
5 |
+
|
6 |
+
}
|
js/admin/notifications.js
CHANGED
@@ -1,11 +1,24 @@
|
|
1 |
-
jQuery(document).on("click", "
|
2 |
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
|
|
8 |
},
|
|
|
|
|
|
|
9 |
})
|
10 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
})
|
1 |
+
jQuery(document).on("click", "#pmw-dismiss-license-expiry-message-button", function () {
|
2 |
|
3 |
+
fetch(pmwNotificationsApi.root + "pmw/v1/notifications/", {
|
4 |
+
method : "POST",
|
5 |
+
cache : "no-cache",
|
6 |
+
headers: {
|
7 |
+
"Content-Type": "application/json",
|
8 |
+
"X-WP-Nonce" : pmwNotificationsApi.nonce,
|
9 |
},
|
10 |
+
body : JSON.stringify({
|
11 |
+
notification: "dismiss_license_expired_notification",
|
12 |
+
}),
|
13 |
})
|
14 |
+
.then(function (response) {
|
15 |
+
if (response.ok) {
|
16 |
+
return response.json()
|
17 |
+
}
|
18 |
+
})
|
19 |
+
.then(function (data) {
|
20 |
+
if (data.success) {
|
21 |
+
jQuery("#license-expired-warning").remove()
|
22 |
+
}
|
23 |
+
})
|
24 |
})
|
languages/woocommerce-google-adwords-conversion-tracking-tag.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
# This file is distributed under the GNU General Public License v3.0.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Pixel Manager for WooCommerce 1.27.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2022-12-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.7.1\n"
|
15 |
"X-Domain: woocommerce-google-adwords-conversion-tracking-tag\n"
|
@@ -34,14 +34,14 @@ msgstr ""
|
|
34 |
msgid "https://sweetcode.com"
|
35 |
msgstr ""
|
36 |
|
37 |
-
#: classes/admin/class-admin.php:
|
38 |
msgid "GA4 Attribution"
|
39 |
msgstr ""
|
40 |
|
41 |
#: classes/admin/class-admin.php:334
|
42 |
#: classes/admin/class-admin.php:335
|
43 |
-
#: wgact.php:315
|
44 |
#: wgact.php:316
|
|
|
45 |
msgid "Pixel Manager"
|
46 |
msgstr ""
|
47 |
|
@@ -306,628 +306,627 @@ msgstr ""
|
|
306 |
msgid "Author"
|
307 |
msgstr ""
|
308 |
|
309 |
-
#: classes/admin/class-admin.php:
|
310 |
msgid ""
|
311 |
"It looks like you are using some sort of ad or script blocker which is blocking the script and CSS files of this plugin.\n"
|
312 |
" In order for the plugin to work properly you need to disable the script blocker."
|
313 |
msgstr ""
|
314 |
|
315 |
-
#: classes/admin/class-admin.php:
|
316 |
-
#: classes/admin/class-notifications.php:
|
317 |
-
#: classes/admin/class-notifications.php:146
|
318 |
msgid "Learn more"
|
319 |
msgstr ""
|
320 |
|
321 |
-
#: classes/admin/class-admin.php:
|
322 |
msgid "Profit Driven Marketing by SweetCode"
|
323 |
msgstr ""
|
324 |
|
325 |
-
#: classes/admin/class-admin.php:
|
326 |
msgid "Show Pro version settings"
|
327 |
msgstr ""
|
328 |
|
329 |
-
#: classes/admin/class-admin.php:
|
330 |
msgid "Enabling this will only show you the pro settings in the user interface. It won't actually enable the pro features. If you want to try out the pro features head over to sweetcode.com and sign up for a trial."
|
331 |
msgstr ""
|
332 |
|
333 |
-
#: classes/admin/class-admin.php:
|
334 |
msgid "Visit us here:"
|
335 |
msgstr ""
|
336 |
|
337 |
-
#: classes/admin/class-admin.php:
|
338 |
msgid "Payment Gateway Tracking Accuracy Report"
|
339 |
msgstr ""
|
340 |
|
341 |
-
#: classes/admin/class-admin.php:
|
342 |
-
#: classes/admin/class-admin.php:
|
343 |
-
#: classes/admin/class-admin.php:
|
344 |
msgid "beta"
|
345 |
msgstr ""
|
346 |
|
347 |
-
#: classes/admin/class-admin.php:
|
348 |
msgid "What's this? Follow this link to learn more"
|
349 |
msgstr ""
|
350 |
|
351 |
-
#: classes/admin/class-admin.php:
|
352 |
msgid "Available payment gateways"
|
353 |
msgstr ""
|
354 |
|
355 |
-
#: classes/admin/class-admin.php:
|
356 |
msgid "id"
|
357 |
msgstr ""
|
358 |
|
359 |
-
#: classes/admin/class-admin.php:
|
360 |
msgid "method_title"
|
361 |
msgstr ""
|
362 |
|
363 |
-
#: classes/admin/class-admin.php:
|
364 |
msgid "class"
|
365 |
msgstr ""
|
366 |
|
367 |
-
#: classes/admin/class-admin.php:
|
368 |
msgid "Purchase confirmation page reached per gateway (active and inactive)"
|
369 |
msgstr ""
|
370 |
|
371 |
-
#: classes/admin/class-admin.php:
|
372 |
-
#: classes/admin/class-admin.php:
|
373 |
-
#: classes/admin/class-admin.php:
|
374 |
msgid "The analysis is being generated. Please check back in 5 minutes."
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: classes/admin/class-admin.php:
|
378 |
msgid "Purchase confirmation page reached per gateway (only active), weighted by frequency"
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: classes/admin/class-admin.php:
|
382 |
msgid "Automatic Conversion Recovery (ACR)"
|
383 |
msgstr ""
|
384 |
|
385 |
#. translators: The number and percentage of orders that were recovered by the Automatic Conversion Recovery (ACR).
|
386 |
-
#: classes/admin/class-admin.php:
|
387 |
msgid "ACR recovered %1$s (%2$s%%) out of %3$s missing conversions."
|
388 |
msgstr ""
|
389 |
|
390 |
-
#: classes/admin/class-admin.php:
|
391 |
msgid "This feature is only available in the pro version of the plugin. Follow the link to learn more about it:"
|
392 |
msgstr ""
|
393 |
|
394 |
-
#: classes/admin/class-admin.php:
|
395 |
msgid "Get the pro version of the Pixel Manager for WooCommerce over here"
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: classes/admin/class-admin.php:
|
399 |
msgid "Go Pro"
|
400 |
msgstr ""
|
401 |
|
402 |
-
#: classes/admin/class-admin.php:
|
403 |
msgid "Contacting Support"
|
404 |
msgstr ""
|
405 |
|
406 |
-
#: classes/admin/class-admin.php:
|
407 |
msgid "Debug Information"
|
408 |
msgstr ""
|
409 |
|
410 |
-
#: classes/admin/class-admin.php:
|
411 |
msgid "copy to clipboard"
|
412 |
msgstr ""
|
413 |
|
414 |
-
#: classes/admin/class-admin.php:
|
415 |
msgid "Export settings"
|
416 |
msgstr ""
|
417 |
|
418 |
-
#: classes/admin/class-admin.php:
|
419 |
msgid "Export to disk"
|
420 |
msgstr ""
|
421 |
|
422 |
-
#: classes/admin/class-admin.php:
|
423 |
msgid "Import settings"
|
424 |
msgstr ""
|
425 |
|
426 |
-
#: classes/admin/class-admin.php:
|
427 |
-
#: classes/admin/class-admin.php:
|
428 |
msgid "Settings imported successfully!"
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: classes/admin/class-admin.php:
|
432 |
-
#: classes/admin/class-admin.php:
|
433 |
msgid "Reloading...(in 5 seconds)!"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: classes/admin/class-admin.php:
|
437 |
-
#: classes/admin/class-admin.php:
|
438 |
msgid "There was an error importing that file! Please try again."
|
439 |
msgstr ""
|
440 |
|
441 |
-
#: classes/admin/class-admin.php:
|
442 |
msgid "Translations"
|
443 |
msgstr ""
|
444 |
|
445 |
-
#: classes/admin/class-admin.php:
|
446 |
msgid "If you want to participate improving the translations of this plugin into your language, please follow this link:"
|
447 |
msgstr ""
|
448 |
|
449 |
-
#: classes/admin/class-admin.php:
|
450 |
msgid "Post a support request in the WordPress support forum here: "
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: classes/admin/class-admin.php:
|
454 |
msgid "Support forum"
|
455 |
msgstr ""
|
456 |
|
457 |
-
#: classes/admin/class-admin.php:
|
458 |
msgid "(Never post the debug or other sensitive information to the support forum. Instead send us the information by email.)"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: classes/admin/class-admin.php:
|
462 |
msgid "Or send us an email to the following address: "
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: classes/admin/class-admin.php:
|
466 |
msgid "Send us your support request through the WooCommerce.com dashboard: "
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: classes/admin/class-admin.php:
|
470 |
msgid "More details about the developer of this plugin: "
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: classes/admin/class-admin.php:
|
474 |
msgid "Developer: SweetCode"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: classes/admin/class-admin.php:
|
478 |
msgid "Website: "
|
479 |
msgstr ""
|
480 |
|
481 |
-
#: classes/admin/class-admin.php:
|
482 |
msgid "The Google Analytics Universal property ID looks like this:"
|
483 |
msgstr ""
|
484 |
|
485 |
-
#: classes/admin/class-admin.php:
|
486 |
msgid "The Google Analytics 4 measurement ID looks like this:"
|
487 |
msgstr ""
|
488 |
|
489 |
-
#: classes/admin/class-admin.php:
|
490 |
msgid "The conversion ID looks similar to this:"
|
491 |
msgstr ""
|
492 |
|
493 |
-
#: classes/admin/class-admin.php:
|
494 |
msgid "The purchase conversion label looks similar to this:"
|
495 |
msgstr ""
|
496 |
|
497 |
-
#: classes/admin/class-admin.php:
|
498 |
msgid "Requires an active Google Ads Conversion ID"
|
499 |
msgstr ""
|
500 |
|
501 |
-
#: classes/admin/class-admin.php:
|
502 |
msgid "The Google Optimize container ID looks like this:"
|
503 |
msgstr ""
|
504 |
|
505 |
-
#: classes/admin/class-admin.php:
|
506 |
-
#: classes/admin/class-admin.php:
|
507 |
msgid "or"
|
508 |
msgstr ""
|
509 |
|
510 |
-
#: classes/admin/class-admin.php:
|
511 |
msgid "The Meta (Facebook) pixel ID looks similar to this:"
|
512 |
msgstr ""
|
513 |
|
514 |
-
#: classes/admin/class-admin.php:
|
515 |
msgid "The Microsoft Advertising UET tag ID looks similar to this:"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: classes/admin/class-admin.php:
|
519 |
msgid "The Twitter pixel ID looks similar to this:"
|
520 |
msgstr ""
|
521 |
|
522 |
-
#: classes/admin/class-admin.php:
|
523 |
msgid "The Pinterest pixel ID looks similar to this:"
|
524 |
msgstr ""
|
525 |
|
526 |
-
#: classes/admin/class-admin.php:
|
527 |
msgid "Enable Pinterest enhanced match"
|
528 |
msgstr ""
|
529 |
|
530 |
-
#: classes/admin/class-admin.php:
|
531 |
msgid "The Snapchat pixel ID looks similar to this:"
|
532 |
msgstr ""
|
533 |
|
534 |
-
#: classes/admin/class-admin.php:
|
535 |
msgid "The TikTok pixel ID looks similar to this:"
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: classes/admin/class-admin.php:
|
539 |
msgid "The Hotjar site ID looks similar to this:"
|
540 |
msgstr ""
|
541 |
|
542 |
-
#: classes/admin/class-admin.php:
|
543 |
msgid "Order Subtotal: Doesn't include tax, shipping, and if available, fees like PayPal or Stripe fees (default)"
|
544 |
msgstr ""
|
545 |
|
546 |
-
#: classes/admin/class-admin.php:
|
547 |
msgid "Order Total: Includes tax and shipping"
|
548 |
msgstr ""
|
549 |
|
550 |
-
#: classes/admin/class-admin.php:
|
551 |
msgid "Profit Margin: Only reports the profit margin. Excludes tax, shipping, and where possible, gateway fees."
|
552 |
msgstr ""
|
553 |
|
554 |
-
#: classes/admin/class-admin.php:
|
555 |
msgid "This is the order total amount reported back to the paid ads pixels (such as Google Ads, Facebook, etc.)"
|
556 |
msgstr ""
|
557 |
|
558 |
-
#: classes/admin/class-admin.php:
|
559 |
msgid "To use the Profit Margin setting you will need to install one of the following two Cost of Goods plugins:"
|
560 |
msgstr ""
|
561 |
|
562 |
-
#: classes/admin/class-admin.php:
|
563 |
-
#: classes/admin/class-admin.php:
|
564 |
msgid "open the documentation"
|
565 |
msgstr ""
|
566 |
|
567 |
-
#: classes/admin/class-admin.php:
|
568 |
msgid "Enable Google consent mode with standard settings"
|
569 |
msgstr ""
|
570 |
|
571 |
-
#: classes/admin/class-admin.php:
|
572 |
msgid "If no region is set, then the restrictions are enabled for all regions. If you specify one or more regions, then the restrictions only apply for the specified regions."
|
573 |
msgstr ""
|
574 |
|
575 |
-
#: classes/admin/class-admin.php:
|
576 |
msgid "Google Analytics Enhanced E-Commerce is "
|
577 |
msgstr ""
|
578 |
|
579 |
-
#: classes/admin/class-admin.php:
|
580 |
msgid "Google Analytics 4 activation required"
|
581 |
msgstr ""
|
582 |
|
583 |
-
#: classes/admin/class-admin.php:
|
584 |
msgid "If enabled, purchase and refund events will be sent to Google through the measurement protocol for increased accuracy."
|
585 |
msgstr ""
|
586 |
|
587 |
-
#: classes/admin/class-admin.php:
|
588 |
-
#: classes/admin/class-admin.php:
|
589 |
msgid "Copied feed URL to clipboard"
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: classes/admin/class-admin.php:
|
593 |
-
#: classes/admin/class-admin.php:
|
594 |
-
#: classes/admin/class-admin.php:
|
595 |
-
#: classes/admin/class-admin.php:
|
596 |
msgid "Copy to clipboard"
|
597 |
msgstr ""
|
598 |
|
599 |
-
#: classes/admin/class-admin.php:
|
600 |
msgid "Import credentials"
|
601 |
msgstr ""
|
602 |
|
603 |
-
#: classes/admin/class-admin.php:
|
604 |
msgid "Delete credentials"
|
605 |
msgstr ""
|
606 |
|
607 |
-
#: classes/admin/class-admin.php:
|
608 |
msgid "The GA4 property ID must be set."
|
609 |
msgstr ""
|
610 |
|
611 |
-
#: classes/admin/class-admin.php:
|
612 |
msgid "Enable Google Analytics enhanced link attribution"
|
613 |
msgstr ""
|
614 |
|
615 |
-
#: classes/admin/class-admin.php:
|
616 |
-
#: classes/admin/class-admin.php:
|
617 |
msgid "You need to activate at least Google Analytics UA or Google Analytics 4"
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: classes/admin/class-admin.php:
|
621 |
msgid "Enable Google user ID"
|
622 |
msgstr ""
|
623 |
|
624 |
-
#: classes/admin/class-admin.php:
|
625 |
msgid "Enable Google Ads Enhanced Conversions"
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: classes/admin/class-admin.php:
|
629 |
msgid "You need to activate Google Ads"
|
630 |
msgstr ""
|
631 |
|
632 |
-
#: classes/admin/class-admin.php:
|
633 |
msgid "The Google Ads phone conversion number must be in the same format as on the website."
|
634 |
msgstr ""
|
635 |
|
636 |
-
#: classes/admin/class-admin.php:
|
637 |
msgid "The conversion name must match the conversion name in Google Ads exactly."
|
638 |
msgstr ""
|
639 |
|
640 |
-
#: classes/admin/class-admin.php:
|
641 |
msgid "Requires an active Google Ads Conversion ID and Conversion Label."
|
642 |
msgstr ""
|
643 |
|
644 |
-
#: classes/admin/class-admin.php:
|
645 |
msgid "The Conversion Name must be set."
|
646 |
msgstr ""
|
647 |
|
648 |
-
#: classes/admin/class-admin.php:
|
649 |
msgid "Borlabs Cookie detected. Automatic support is:"
|
650 |
msgstr ""
|
651 |
|
652 |
-
#: classes/admin/class-admin.php:
|
653 |
msgid "Cookiebot detected. Automatic support is:"
|
654 |
msgstr ""
|
655 |
|
656 |
-
#: classes/admin/class-admin.php:
|
657 |
msgid "Complianz GDPR detected. Automatic support is:"
|
658 |
msgstr ""
|
659 |
|
660 |
-
#: classes/admin/class-admin.php:
|
661 |
msgid "Cookie Notice (by hu-manity.co) detected. Automatic support is:"
|
662 |
msgstr ""
|
663 |
|
664 |
-
#: classes/admin/class-admin.php:
|
665 |
msgid "Cookie Script (by cookie-script.com) detected. Automatic support is:"
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: classes/admin/class-admin.php:
|
669 |
msgid "GDPR Cookie Compliance (by Moove Agency) detected. Automatic support is:"
|
670 |
msgstr ""
|
671 |
|
672 |
-
#: classes/admin/class-admin.php:
|
673 |
msgid "GDPR Cookie Consent (by WebToffee) detected. Automatic support is:"
|
674 |
msgstr ""
|
675 |
|
676 |
-
#: classes/admin/class-admin.php:
|
677 |
msgid "Enable Explicit Consent Mode"
|
678 |
msgstr ""
|
679 |
|
680 |
-
#: classes/admin/class-admin.php:
|
681 |
msgid "Only activate the Explicit Consent Mode if you are also using a Cookie Management Platform (a cookie banner) that is compatible with this plugin. Find a list of compatible plugins in the documentation."
|
682 |
msgstr ""
|
683 |
|
684 |
-
#: classes/admin/class-admin.php:
|
685 |
-
#: classes/admin/class-admin.php:
|
686 |
-
#: classes/admin/class-admin.php:
|
687 |
-
#: classes/admin/class-admin.php:
|
688 |
msgid "You need to activate the Meta (Facebook) pixel"
|
689 |
msgstr ""
|
690 |
|
691 |
-
#: classes/admin/class-admin.php:
|
692 |
msgid "The test event code automatically rotates frequently within Facebook. If you don't see the server events flowing in, first make sure that you've set the latest test event code."
|
693 |
msgstr ""
|
694 |
|
695 |
-
#: classes/admin/class-admin.php:
|
696 |
msgid "Send CAPI hits for anonymous visitors who likely have blocked the Meta (Facebook) pixel."
|
697 |
msgstr ""
|
698 |
|
699 |
-
#: classes/admin/class-admin.php:
|
700 |
-
#: classes/admin/class-admin.php:
|
701 |
msgid "Send events with additional visitor identifiers, such as email and phone number, if available."
|
702 |
msgstr ""
|
703 |
|
704 |
-
#: classes/admin/class-admin.php:
|
705 |
msgid "Enable Meta (Facebook) product microdata output"
|
706 |
msgstr ""
|
707 |
|
708 |
-
#: classes/admin/class-admin.php:
|
709 |
-
#: classes/admin/class-admin.php:
|
710 |
-
#: classes/admin/class-admin.php:
|
711 |
msgid "You need to activate the TikTok pixel"
|
712 |
msgstr ""
|
713 |
|
714 |
-
#: classes/admin/class-admin.php:
|
715 |
msgid "The test event code automatically rotates frequently within TikTok. If you don't see the server events flowing in, first make sure that you've set the latest test event code."
|
716 |
msgstr ""
|
717 |
|
718 |
-
#: classes/admin/class-admin.php:
|
719 |
msgid "Send Events API hits for anonymous visitors who likely have blocked the TikTok pixel."
|
720 |
msgstr ""
|
721 |
|
722 |
-
#: classes/admin/class-admin.php:
|
723 |
msgid "Only disable order duplication prevention for testing."
|
724 |
msgstr ""
|
725 |
|
726 |
-
#: classes/admin/class-admin.php:
|
727 |
msgid "Automatically reactivates 6 hours after disabling duplication prevention."
|
728 |
msgstr ""
|
729 |
|
730 |
-
#: classes/admin/class-admin.php:
|
731 |
msgid "Enable the maximum compatibility mode"
|
732 |
msgstr ""
|
733 |
|
734 |
-
#: classes/admin/class-admin.php:
|
735 |
msgid "Automatic Conversion Recovery (ACR) is "
|
736 |
msgstr ""
|
737 |
|
738 |
-
#: classes/admin/class-admin.php:
|
739 |
msgid "Display PMW related information on the order list page"
|
740 |
msgstr ""
|
741 |
|
742 |
-
#: classes/admin/class-admin.php:
|
743 |
msgid "The Scroll Tracker thresholds. A comma separated list of scroll tracking thresholds in percent where the scroll tracker triggers its events."
|
744 |
msgstr ""
|
745 |
|
746 |
-
#: classes/admin/class-admin.php:
|
747 |
msgid "Advanced order duplication prevention is "
|
748 |
msgstr ""
|
749 |
|
750 |
-
#: classes/admin/class-admin.php:
|
751 |
msgid "Basic order duplication prevention is "
|
752 |
msgstr ""
|
753 |
|
754 |
-
#: classes/admin/class-admin.php:
|
755 |
msgid "Enable dynamic remarketing audience collection"
|
756 |
msgstr ""
|
757 |
|
758 |
-
#: classes/admin/class-admin.php:
|
759 |
msgid "You need to choose the correct product identifier setting in order to match the product identifiers in the product feeds."
|
760 |
msgstr ""
|
761 |
|
762 |
-
#: classes/admin/class-admin.php:
|
763 |
msgid "Enable variations output"
|
764 |
msgstr ""
|
765 |
|
766 |
-
#: classes/admin/class-admin.php:
|
767 |
msgid "In order for this to work you need to upload your product feed including product variations and the item_group_id. Disable it, if you choose only to upload the parent product for variable products."
|
768 |
msgstr ""
|
769 |
|
770 |
-
#: classes/admin/class-admin.php:
|
771 |
msgid "Retail"
|
772 |
msgstr ""
|
773 |
|
774 |
-
#: classes/admin/class-admin.php:
|
775 |
msgid "Education"
|
776 |
msgstr ""
|
777 |
|
778 |
-
#: classes/admin/class-admin.php:
|
779 |
msgid "Hotels and rentals"
|
780 |
msgstr ""
|
781 |
|
782 |
-
#: classes/admin/class-admin.php:
|
783 |
msgid "Jobs"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: classes/admin/class-admin.php:
|
787 |
msgid "Local deals"
|
788 |
msgstr ""
|
789 |
|
790 |
-
#: classes/admin/class-admin.php:
|
791 |
msgid "Real estate"
|
792 |
msgstr ""
|
793 |
|
794 |
-
#: classes/admin/class-admin.php:
|
795 |
msgid "Custom"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: classes/admin/class-admin.php:
|
799 |
msgid "ID of your Google Merchant Center account. It looks like this: 12345678"
|
800 |
msgstr ""
|
801 |
|
802 |
-
#: classes/admin/class-admin.php:
|
803 |
msgid "post ID (default)"
|
804 |
msgstr ""
|
805 |
|
806 |
-
#: classes/admin/class-admin.php:
|
807 |
msgid "SKU"
|
808 |
msgstr ""
|
809 |
|
810 |
-
#: classes/admin/class-admin.php:
|
811 |
msgid "ID for the WooCommerce Google Product Feed. Outputs the post ID with woocommerce_gpf_ prefix *"
|
812 |
msgstr ""
|
813 |
|
814 |
-
#: classes/admin/class-admin.php:
|
815 |
msgid "ID for the WooCommerce Google Listings & Ads Plugin. Outputs the post ID with gla_ prefix **"
|
816 |
msgstr ""
|
817 |
|
818 |
-
#: classes/admin/class-admin.php:
|
819 |
msgid "Choose a product identifier."
|
820 |
msgstr ""
|
821 |
|
822 |
-
#: classes/admin/class-admin.php:
|
823 |
msgid "* This is for users of the WooCommerce Google Product Feed Plugin"
|
824 |
msgstr ""
|
825 |
|
826 |
-
#: classes/admin/class-admin.php:
|
827 |
msgid "** This is for users of the WooCommerce Google Listings & Ads Plugin"
|
828 |
msgstr ""
|
829 |
|
830 |
-
#: classes/admin/class-admin.php:3415
|
831 |
#: classes/admin/class-admin.php:3420
|
|
|
832 |
msgid "active"
|
833 |
msgstr ""
|
834 |
|
835 |
-
#: classes/admin/class-admin.php:3425
|
836 |
#: classes/admin/class-admin.php:3430
|
|
|
837 |
msgid "inactive"
|
838 |
msgstr ""
|
839 |
|
840 |
-
#: classes/admin/class-admin.php:3435
|
841 |
#: classes/admin/class-admin.php:3440
|
|
|
842 |
msgid "partially active"
|
843 |
msgstr ""
|
844 |
|
845 |
-
#: classes/admin/class-admin.php:
|
846 |
msgid "Pro Feature"
|
847 |
msgstr ""
|
848 |
|
849 |
-
#: classes/admin/class-admin.php:
|
850 |
msgid "You have entered an invalid Google Analytics Universal property ID."
|
851 |
msgstr ""
|
852 |
|
853 |
-
#: classes/admin/class-admin.php:
|
854 |
msgid "You have entered an invalid Google Analytics 4 measurement ID."
|
855 |
msgstr ""
|
856 |
|
857 |
-
#: classes/admin/class-admin.php:
|
858 |
msgid "You have entered an invalid Google Analytics 4 API key."
|
859 |
msgstr ""
|
860 |
|
861 |
-
#: classes/admin/class-admin.php:
|
862 |
msgid "You have entered an invalid GA4 property ID."
|
863 |
msgstr ""
|
864 |
|
865 |
-
#: classes/admin/class-admin.php:
|
866 |
msgid "You have entered an invalid conversion ID. It only contains 8 to 10 digits."
|
867 |
msgstr ""
|
868 |
|
869 |
-
#: classes/admin/class-admin.php:
|
870 |
-
#: classes/admin/class-admin.php:
|
871 |
msgid "You have entered an invalid conversion label."
|
872 |
msgstr ""
|
873 |
|
874 |
-
#: classes/admin/class-admin.php:
|
875 |
msgid "You have entered an invalid merchant ID. It only contains 6 to 12 digits."
|
876 |
msgstr ""
|
877 |
|
878 |
-
#: classes/admin/class-admin.php:
|
879 |
msgid "You have entered an invalid Google Optimize container ID."
|
880 |
msgstr ""
|
881 |
|
882 |
-
#: classes/admin/class-admin.php:
|
883 |
msgid "You have entered an invalid Meta (Facebook) pixel ID. It only contains 14 to 16 digits."
|
884 |
msgstr ""
|
885 |
|
886 |
-
#: classes/admin/class-admin.php:
|
887 |
msgid "You have entered an invalid Meta (Facebook) CAPI token."
|
888 |
msgstr ""
|
889 |
|
890 |
-
#: classes/admin/class-admin.php:
|
891 |
msgid "You have entered an invalid Meta (Facebook) CAPI test_event_code."
|
892 |
msgstr ""
|
893 |
|
894 |
-
#: classes/admin/class-admin.php:
|
895 |
msgid "You have entered an invalid Bing Ads UET tag ID. It only contains 7 to 9 digits."
|
896 |
msgstr ""
|
897 |
|
898 |
-
#: classes/admin/class-admin.php:
|
899 |
msgid "You have entered an invalid Twitter pixel ID. It only contains 5 to 7 lowercase letters and numbers."
|
900 |
msgstr ""
|
901 |
|
902 |
-
#: classes/admin/class-admin.php:
|
903 |
msgid "You have entered an invalid Pinterest pixel ID. It only contains 13 digits."
|
904 |
msgstr ""
|
905 |
|
906 |
-
#: classes/admin/class-admin.php:
|
907 |
msgid "You have entered an invalid Snapchat pixel ID."
|
908 |
msgstr ""
|
909 |
|
910 |
-
#: classes/admin/class-admin.php:
|
911 |
msgid "You have entered an invalid TikTok pixel ID."
|
912 |
msgstr ""
|
913 |
|
914 |
-
#: classes/admin/class-admin.php:
|
915 |
msgid "You have entered an invalid TikTok Events API access token."
|
916 |
msgstr ""
|
917 |
|
918 |
-
#: classes/admin/class-admin.php:
|
919 |
msgid "You have entered an invalid TikTok EAPI test_event_code."
|
920 |
msgstr ""
|
921 |
|
922 |
-
#: classes/admin/class-admin.php:
|
923 |
msgid "You have entered an invalid Hotjar site ID. It only contains 6 to 9 digits."
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: classes/admin/class-admin.php:
|
927 |
msgid "You have entered the Scroll Tracker thresholds in the wrong format. It must be a list of comma separated percentages, like this \"25,50,75,100\""
|
928 |
msgstr ""
|
929 |
|
930 |
-
#: classes/admin/class-admin.php:
|
931 |
msgid "You have entered an invalid conversion name. Special characters, quotes and single quotes are not allowed due to security reasons."
|
932 |
msgstr ""
|
933 |
|
@@ -949,42 +948,49 @@ msgid "I already did"
|
|
949 |
msgstr ""
|
950 |
|
951 |
#: classes/admin/class-ask-for-rating.php:193
|
952 |
-
#: classes/admin/class-notifications.php:
|
953 |
-
#: classes/admin/class-notifications.php:
|
954 |
msgid "If the dismiss button is not working, here's why >>"
|
955 |
msgstr ""
|
956 |
|
957 |
-
#: classes/admin/class-notifications.php:
|
958 |
msgid "Payment Gateway Accuracy Warning"
|
959 |
msgstr ""
|
960 |
|
961 |
-
#: classes/admin/class-notifications.php:
|
962 |
-
msgid "The
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
963 |
msgstr ""
|
964 |
|
965 |
-
#: classes/admin/class-notifications.php:
|
966 |
-
msgid "
|
967 |
msgstr ""
|
968 |
|
969 |
-
#: classes/admin/class-notifications.php:
|
970 |
-
#: classes/admin/class-notifications.php:157
|
971 |
msgid "Click here to dismiss this warning forever"
|
972 |
msgstr ""
|
973 |
|
974 |
-
#: classes/admin/class-notifications.php:
|
975 |
-
msgid "
|
976 |
msgstr ""
|
977 |
|
978 |
-
#: classes/admin/class-notifications.php:
|
979 |
-
msgid "
|
980 |
msgstr ""
|
981 |
|
982 |
-
#: classes/admin/class-notifications.php:
|
983 |
-
msgid "
|
984 |
msgstr ""
|
985 |
|
986 |
-
#: classes/admin/class-notifications.php:
|
987 |
-
msgid "
|
988 |
msgstr ""
|
989 |
|
990 |
#: classes/admin/class-order-columns.php:83
|
@@ -1008,7 +1014,7 @@ msgid "Order not tracked by PMW"
|
|
1008 |
msgstr ""
|
1009 |
|
1010 |
#: classes/admin/class-order-columns.php:293
|
1011 |
-
msgid "This order was created by a shop manager. Only orders created by customers are analysed."
|
1012 |
msgstr ""
|
1013 |
|
1014 |
#: classes/admin/class-order-columns.php:301
|
@@ -1019,14 +1025,14 @@ msgstr ""
|
|
1019 |
msgid "Conversion pixels not fired yet"
|
1020 |
msgstr ""
|
1021 |
|
1022 |
-
#: wgact.php:
|
1023 |
msgid "Pixel Manager for WooCommerce error"
|
1024 |
msgstr ""
|
1025 |
|
1026 |
-
#: wgact.php:
|
1027 |
msgid "Your environment doesn't meet all the system requirements listed below."
|
1028 |
msgstr ""
|
1029 |
|
1030 |
-
#: wgact.php:
|
1031 |
msgid "The WooCommerce plugin needs to be activated"
|
1032 |
msgstr ""
|
2 |
# This file is distributed under the GNU General Public License v3.0.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Pixel Manager for WooCommerce 1.27.9\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2022-12-09T04:56:32+00:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.7.1\n"
|
15 |
"X-Domain: woocommerce-google-adwords-conversion-tracking-tag\n"
|
34 |
msgid "https://sweetcode.com"
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: classes/admin/class-admin.php:78
|
38 |
msgid "GA4 Attribution"
|
39 |
msgstr ""
|
40 |
|
41 |
#: classes/admin/class-admin.php:334
|
42 |
#: classes/admin/class-admin.php:335
|
|
|
43 |
#: wgact.php:316
|
44 |
+
#: wgact.php:317
|
45 |
msgid "Pixel Manager"
|
46 |
msgstr ""
|
47 |
|
306 |
msgid "Author"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: classes/admin/class-admin.php:1413
|
310 |
msgid ""
|
311 |
"It looks like you are using some sort of ad or script blocker which is blocking the script and CSS files of this plugin.\n"
|
312 |
" In order for the plugin to work properly you need to disable the script blocker."
|
313 |
msgstr ""
|
314 |
|
315 |
+
#: classes/admin/class-admin.php:1420
|
316 |
+
#: classes/admin/class-notifications.php:164
|
|
|
317 |
msgid "Learn more"
|
318 |
msgstr ""
|
319 |
|
320 |
+
#: classes/admin/class-admin.php:1463
|
321 |
msgid "Profit Driven Marketing by SweetCode"
|
322 |
msgstr ""
|
323 |
|
324 |
+
#: classes/admin/class-admin.php:1470
|
325 |
msgid "Show Pro version settings"
|
326 |
msgstr ""
|
327 |
|
328 |
+
#: classes/admin/class-admin.php:1483
|
329 |
msgid "Enabling this will only show you the pro settings in the user interface. It won't actually enable the pro features. If you want to try out the pro features head over to sweetcode.com and sign up for a trial."
|
330 |
msgstr ""
|
331 |
|
332 |
+
#: classes/admin/class-admin.php:1489
|
333 |
msgid "Visit us here:"
|
334 |
msgstr ""
|
335 |
|
336 |
+
#: classes/admin/class-admin.php:1535
|
337 |
msgid "Payment Gateway Tracking Accuracy Report"
|
338 |
msgstr ""
|
339 |
|
340 |
+
#: classes/admin/class-admin.php:1536
|
341 |
+
#: classes/admin/class-admin.php:3406
|
342 |
+
#: classes/admin/class-admin.php:3414
|
343 |
msgid "beta"
|
344 |
msgstr ""
|
345 |
|
346 |
+
#: classes/admin/class-admin.php:1540
|
347 |
msgid "What's this? Follow this link to learn more"
|
348 |
msgstr ""
|
349 |
|
350 |
+
#: classes/admin/class-admin.php:1548
|
351 |
msgid "Available payment gateways"
|
352 |
msgstr ""
|
353 |
|
354 |
+
#: classes/admin/class-admin.php:1555
|
355 |
msgid "id"
|
356 |
msgstr ""
|
357 |
|
358 |
+
#: classes/admin/class-admin.php:1556
|
359 |
msgid "method_title"
|
360 |
msgstr ""
|
361 |
|
362 |
+
#: classes/admin/class-admin.php:1557
|
363 |
msgid "class"
|
364 |
msgstr ""
|
365 |
|
366 |
+
#: classes/admin/class-admin.php:1575
|
367 |
msgid "Purchase confirmation page reached per gateway (active and inactive)"
|
368 |
msgstr ""
|
369 |
|
370 |
+
#: classes/admin/class-admin.php:1583
|
371 |
+
#: classes/admin/class-admin.php:1632
|
372 |
+
#: classes/admin/class-admin.php:1707
|
373 |
msgid "The analysis is being generated. Please check back in 5 minutes."
|
374 |
msgstr ""
|
375 |
|
376 |
+
#: classes/admin/class-admin.php:1624
|
377 |
msgid "Purchase confirmation page reached per gateway (only active), weighted by frequency"
|
378 |
msgstr ""
|
379 |
|
380 |
+
#: classes/admin/class-admin.php:1695
|
381 |
msgid "Automatic Conversion Recovery (ACR)"
|
382 |
msgstr ""
|
383 |
|
384 |
#. translators: The number and percentage of orders that were recovered by the Automatic Conversion Recovery (ACR).
|
385 |
+
#: classes/admin/class-admin.php:1783
|
386 |
msgid "ACR recovered %1$s (%2$s%%) out of %3$s missing conversions."
|
387 |
msgstr ""
|
388 |
|
389 |
+
#: classes/admin/class-admin.php:1801
|
390 |
msgid "This feature is only available in the pro version of the plugin. Follow the link to learn more about it:"
|
391 |
msgstr ""
|
392 |
|
393 |
+
#: classes/admin/class-admin.php:1803
|
394 |
msgid "Get the pro version of the Pixel Manager for WooCommerce over here"
|
395 |
msgstr ""
|
396 |
|
397 |
+
#: classes/admin/class-admin.php:1805
|
398 |
msgid "Go Pro"
|
399 |
msgstr ""
|
400 |
|
401 |
+
#: classes/admin/class-admin.php:1834
|
402 |
msgid "Contacting Support"
|
403 |
msgstr ""
|
404 |
|
405 |
+
#: classes/admin/class-admin.php:1856
|
406 |
msgid "Debug Information"
|
407 |
msgstr ""
|
408 |
|
409 |
+
#: classes/admin/class-admin.php:1865
|
410 |
msgid "copy to clipboard"
|
411 |
msgstr ""
|
412 |
|
413 |
+
#: classes/admin/class-admin.php:1875
|
414 |
msgid "Export settings"
|
415 |
msgstr ""
|
416 |
|
417 |
+
#: classes/admin/class-admin.php:1887
|
418 |
msgid "Export to disk"
|
419 |
msgstr ""
|
420 |
|
421 |
+
#: classes/admin/class-admin.php:1896
|
422 |
msgid "Import settings"
|
423 |
msgstr ""
|
424 |
|
425 |
+
#: classes/admin/class-admin.php:1901
|
426 |
+
#: classes/admin/class-admin.php:2526
|
427 |
msgid "Settings imported successfully!"
|
428 |
msgstr ""
|
429 |
|
430 |
+
#: classes/admin/class-admin.php:1904
|
431 |
+
#: classes/admin/class-admin.php:2529
|
432 |
msgid "Reloading...(in 5 seconds)!"
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: classes/admin/class-admin.php:1910
|
436 |
+
#: classes/admin/class-admin.php:2535
|
437 |
msgid "There was an error importing that file! Please try again."
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: classes/admin/class-admin.php:1927
|
441 |
msgid "Translations"
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: classes/admin/class-admin.php:1928
|
445 |
msgid "If you want to participate improving the translations of this plugin into your language, please follow this link:"
|
446 |
msgstr ""
|
447 |
|
448 |
+
#: classes/admin/class-admin.php:1946
|
449 |
msgid "Post a support request in the WordPress support forum here: "
|
450 |
msgstr ""
|
451 |
|
452 |
+
#: classes/admin/class-admin.php:1949
|
453 |
msgid "Support forum"
|
454 |
msgstr ""
|
455 |
|
456 |
+
#: classes/admin/class-admin.php:1953
|
457 |
msgid "(Never post the debug or other sensitive information to the support forum. Instead send us the information by email.)"
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: classes/admin/class-admin.php:1956
|
461 |
msgid "Or send us an email to the following address: "
|
462 |
msgstr ""
|
463 |
|
464 |
+
#: classes/admin/class-admin.php:1972
|
465 |
msgid "Send us your support request through the WooCommerce.com dashboard: "
|
466 |
msgstr ""
|
467 |
|
468 |
+
#: classes/admin/class-admin.php:1986
|
469 |
msgid "More details about the developer of this plugin: "
|
470 |
msgstr ""
|
471 |
|
472 |
+
#: classes/admin/class-admin.php:1989
|
473 |
msgid "Developer: SweetCode"
|
474 |
msgstr ""
|
475 |
|
476 |
+
#: classes/admin/class-admin.php:1991
|
477 |
msgid "Website: "
|
478 |
msgstr ""
|
479 |
|
480 |
+
#: classes/admin/class-admin.php:2015
|
481 |
msgid "The Google Analytics Universal property ID looks like this:"
|
482 |
msgstr ""
|
483 |
|
484 |
+
#: classes/admin/class-admin.php:2032
|
485 |
msgid "The Google Analytics 4 measurement ID looks like this:"
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: classes/admin/class-admin.php:2049
|
489 |
msgid "The conversion ID looks similar to this:"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: classes/admin/class-admin.php:2066
|
493 |
msgid "The purchase conversion label looks similar to this:"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: classes/admin/class-admin.php:2070
|
497 |
msgid "Requires an active Google Ads Conversion ID"
|
498 |
msgstr ""
|
499 |
|
500 |
+
#: classes/admin/class-admin.php:2089
|
501 |
msgid "The Google Optimize container ID looks like this:"
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: classes/admin/class-admin.php:2091
|
505 |
+
#: classes/admin/class-admin.php:2294
|
506 |
msgid "or"
|
507 |
msgstr ""
|
508 |
|
509 |
+
#: classes/admin/class-admin.php:2108
|
510 |
msgid "The Meta (Facebook) pixel ID looks similar to this:"
|
511 |
msgstr ""
|
512 |
|
513 |
+
#: classes/admin/class-admin.php:2127
|
514 |
msgid "The Microsoft Advertising UET tag ID looks similar to this:"
|
515 |
msgstr ""
|
516 |
|
517 |
+
#: classes/admin/class-admin.php:2146
|
518 |
msgid "The Twitter pixel ID looks similar to this:"
|
519 |
msgstr ""
|
520 |
|
521 |
+
#: classes/admin/class-admin.php:2165
|
522 |
msgid "The Pinterest pixel ID looks similar to this:"
|
523 |
msgstr ""
|
524 |
|
525 |
+
#: classes/admin/class-admin.php:2181
|
526 |
msgid "Enable Pinterest enhanced match"
|
527 |
msgstr ""
|
528 |
|
529 |
+
#: classes/admin/class-admin.php:2209
|
530 |
msgid "The Snapchat pixel ID looks similar to this:"
|
531 |
msgstr ""
|
532 |
|
533 |
+
#: classes/admin/class-admin.php:2230
|
534 |
msgid "The TikTok pixel ID looks similar to this:"
|
535 |
msgstr ""
|
536 |
|
537 |
+
#: classes/admin/class-admin.php:2246
|
538 |
msgid "The Hotjar site ID looks similar to this:"
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: classes/admin/class-admin.php:2256
|
542 |
msgid "Order Subtotal: Doesn't include tax, shipping, and if available, fees like PayPal or Stripe fees (default)"
|
543 |
msgstr ""
|
544 |
|
545 |
+
#: classes/admin/class-admin.php:2264
|
546 |
msgid "Order Total: Includes tax and shipping"
|
547 |
msgstr ""
|
548 |
|
549 |
+
#: classes/admin/class-admin.php:2278
|
550 |
msgid "Profit Margin: Only reports the profit margin. Excludes tax, shipping, and where possible, gateway fees."
|
551 |
msgstr ""
|
552 |
|
553 |
+
#: classes/admin/class-admin.php:2286
|
554 |
msgid "This is the order total amount reported back to the paid ads pixels (such as Google Ads, Facebook, etc.)"
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: classes/admin/class-admin.php:2291
|
558 |
msgid "To use the Profit Margin setting you will need to install one of the following two Cost of Goods plugins:"
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: classes/admin/class-admin.php:2318
|
562 |
+
#: classes/admin/class-admin.php:2328
|
563 |
msgid "open the documentation"
|
564 |
msgstr ""
|
565 |
|
566 |
+
#: classes/admin/class-admin.php:2348
|
567 |
msgid "Enable Google consent mode with standard settings"
|
568 |
msgstr ""
|
569 |
|
570 |
+
#: classes/admin/class-admin.php:2386
|
571 |
msgid "If no region is set, then the restrictions are enabled for all regions. If you specify one or more regions, then the restrictions only apply for the specified regions."
|
572 |
msgstr ""
|
573 |
|
574 |
+
#: classes/admin/class-admin.php:2394
|
575 |
msgid "Google Analytics Enhanced E-Commerce is "
|
576 |
msgstr ""
|
577 |
|
578 |
+
#: classes/admin/class-admin.php:2417
|
579 |
msgid "Google Analytics 4 activation required"
|
580 |
msgstr ""
|
581 |
|
582 |
+
#: classes/admin/class-admin.php:2420
|
583 |
msgid "If enabled, purchase and refund events will be sent to Google through the measurement protocol for increased accuracy."
|
584 |
msgstr ""
|
585 |
|
586 |
+
#: classes/admin/class-admin.php:2470
|
587 |
+
#: classes/admin/class-admin.php:2725
|
588 |
msgid "Copied feed URL to clipboard"
|
589 |
msgstr ""
|
590 |
|
591 |
+
#: classes/admin/class-admin.php:2475
|
592 |
+
#: classes/admin/class-admin.php:2483
|
593 |
+
#: classes/admin/class-admin.php:2730
|
594 |
+
#: classes/admin/class-admin.php:2737
|
595 |
msgid "Copy to clipboard"
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: classes/admin/class-admin.php:2497
|
599 |
msgid "Import credentials"
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: classes/admin/class-admin.php:2508
|
603 |
msgid "Delete credentials"
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: classes/admin/class-admin.php:2519
|
607 |
msgid "The GA4 property ID must be set."
|
608 |
msgstr ""
|
609 |
|
610 |
+
#: classes/admin/class-admin.php:2555
|
611 |
msgid "Enable Google Analytics enhanced link attribution"
|
612 |
msgstr ""
|
613 |
|
614 |
+
#: classes/admin/class-admin.php:2571
|
615 |
+
#: classes/admin/class-admin.php:2601
|
616 |
msgid "You need to activate at least Google Analytics UA or Google Analytics 4"
|
617 |
msgstr ""
|
618 |
|
619 |
+
#: classes/admin/class-admin.php:2590
|
620 |
msgid "Enable Google user ID"
|
621 |
msgstr ""
|
622 |
|
623 |
+
#: classes/admin/class-admin.php:2620
|
624 |
msgid "Enable Google Ads Enhanced Conversions"
|
625 |
msgstr ""
|
626 |
|
627 |
+
#: classes/admin/class-admin.php:2631
|
628 |
msgid "You need to activate Google Ads"
|
629 |
msgstr ""
|
630 |
|
631 |
+
#: classes/admin/class-admin.php:2651
|
632 |
msgid "The Google Ads phone conversion number must be in the same format as on the website."
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: classes/admin/class-admin.php:2687
|
636 |
msgid "The conversion name must match the conversion name in Google Ads exactly."
|
637 |
msgstr ""
|
638 |
|
639 |
+
#: classes/admin/class-admin.php:2695
|
640 |
msgid "Requires an active Google Ads Conversion ID and Conversion Label."
|
641 |
msgstr ""
|
642 |
|
643 |
+
#: classes/admin/class-admin.php:2745
|
644 |
msgid "The Conversion Name must be set."
|
645 |
msgstr ""
|
646 |
|
647 |
+
#: classes/admin/class-admin.php:2753
|
648 |
msgid "Borlabs Cookie detected. Automatic support is:"
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: classes/admin/class-admin.php:2759
|
652 |
msgid "Cookiebot detected. Automatic support is:"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: classes/admin/class-admin.php:2765
|
656 |
msgid "Complianz GDPR detected. Automatic support is:"
|
657 |
msgstr ""
|
658 |
|
659 |
+
#: classes/admin/class-admin.php:2771
|
660 |
msgid "Cookie Notice (by hu-manity.co) detected. Automatic support is:"
|
661 |
msgstr ""
|
662 |
|
663 |
+
#: classes/admin/class-admin.php:2777
|
664 |
msgid "Cookie Script (by cookie-script.com) detected. Automatic support is:"
|
665 |
msgstr ""
|
666 |
|
667 |
+
#: classes/admin/class-admin.php:2783
|
668 |
msgid "GDPR Cookie Compliance (by Moove Agency) detected. Automatic support is:"
|
669 |
msgstr ""
|
670 |
|
671 |
+
#: classes/admin/class-admin.php:2789
|
672 |
msgid "GDPR Cookie Consent (by WebToffee) detected. Automatic support is:"
|
673 |
msgstr ""
|
674 |
|
675 |
+
#: classes/admin/class-admin.php:2808
|
676 |
msgid "Enable Explicit Consent Mode"
|
677 |
msgstr ""
|
678 |
|
679 |
+
#: classes/admin/class-admin.php:2817
|
680 |
msgid "Only activate the Explicit Consent Mode if you are also using a Cookie Management Platform (a cookie banner) that is compatible with this plugin. Find a list of compatible plugins in the documentation."
|
681 |
msgstr ""
|
682 |
|
683 |
+
#: classes/admin/class-admin.php:2837
|
684 |
+
#: classes/admin/class-admin.php:2893
|
685 |
+
#: classes/admin/class-admin.php:2922
|
686 |
+
#: classes/admin/class-admin.php:2950
|
687 |
msgid "You need to activate the Meta (Facebook) pixel"
|
688 |
msgstr ""
|
689 |
|
690 |
+
#: classes/admin/class-admin.php:2864
|
691 |
msgid "The test event code automatically rotates frequently within Facebook. If you don't see the server events flowing in, first make sure that you've set the latest test event code."
|
692 |
msgstr ""
|
693 |
|
694 |
+
#: classes/admin/class-admin.php:2884
|
695 |
msgid "Send CAPI hits for anonymous visitors who likely have blocked the Meta (Facebook) pixel."
|
696 |
msgstr ""
|
697 |
|
698 |
+
#: classes/admin/class-admin.php:2913
|
699 |
+
#: classes/admin/class-admin.php:3053
|
700 |
msgid "Send events with additional visitor identifiers, such as email and phone number, if available."
|
701 |
msgstr ""
|
702 |
|
703 |
+
#: classes/admin/class-admin.php:2941
|
704 |
msgid "Enable Meta (Facebook) product microdata output"
|
705 |
msgstr ""
|
706 |
|
707 |
+
#: classes/admin/class-admin.php:2977
|
708 |
+
#: classes/admin/class-admin.php:3033
|
709 |
+
#: classes/admin/class-admin.php:3062
|
710 |
msgid "You need to activate the TikTok pixel"
|
711 |
msgstr ""
|
712 |
|
713 |
+
#: classes/admin/class-admin.php:3004
|
714 |
msgid "The test event code automatically rotates frequently within TikTok. If you don't see the server events flowing in, first make sure that you've set the latest test event code."
|
715 |
msgstr ""
|
716 |
|
717 |
+
#: classes/admin/class-admin.php:3024
|
718 |
msgid "Send Events API hits for anonymous visitors who likely have blocked the TikTok pixel."
|
719 |
msgstr ""
|
720 |
|
721 |
+
#: classes/admin/class-admin.php:3089
|
722 |
msgid "Only disable order duplication prevention for testing."
|
723 |
msgstr ""
|
724 |
|
725 |
+
#: classes/admin/class-admin.php:3095
|
726 |
msgid "Automatically reactivates 6 hours after disabling duplication prevention."
|
727 |
msgstr ""
|
728 |
|
729 |
+
#: classes/admin/class-admin.php:3112
|
730 |
msgid "Enable the maximum compatibility mode"
|
731 |
msgstr ""
|
732 |
|
733 |
+
#: classes/admin/class-admin.php:3147
|
734 |
msgid "Automatic Conversion Recovery (ACR) is "
|
735 |
msgstr ""
|
736 |
|
737 |
+
#: classes/admin/class-admin.php:3165
|
738 |
msgid "Display PMW related information on the order list page"
|
739 |
msgstr ""
|
740 |
|
741 |
+
#: classes/admin/class-admin.php:3188
|
742 |
msgid "The Scroll Tracker thresholds. A comma separated list of scroll tracking thresholds in percent where the scroll tracker triggers its events."
|
743 |
msgstr ""
|
744 |
|
745 |
+
#: classes/admin/class-admin.php:3195
|
746 |
msgid "Advanced order duplication prevention is "
|
747 |
msgstr ""
|
748 |
|
749 |
+
#: classes/admin/class-admin.php:3197
|
750 |
msgid "Basic order duplication prevention is "
|
751 |
msgstr ""
|
752 |
|
753 |
+
#: classes/admin/class-admin.php:3221
|
754 |
msgid "Enable dynamic remarketing audience collection"
|
755 |
msgstr ""
|
756 |
|
757 |
+
#: classes/admin/class-admin.php:3233
|
758 |
msgid "You need to choose the correct product identifier setting in order to match the product identifiers in the product feeds."
|
759 |
msgstr ""
|
760 |
|
761 |
+
#: classes/admin/class-admin.php:3251
|
762 |
msgid "Enable variations output"
|
763 |
msgstr ""
|
764 |
|
765 |
+
#: classes/admin/class-admin.php:3262
|
766 |
msgid "In order for this to work you need to upload your product feed including product variations and the item_group_id. Disable it, if you choose only to upload the parent product for variable products."
|
767 |
msgstr ""
|
768 |
|
769 |
+
#: classes/admin/class-admin.php:3277
|
770 |
msgid "Retail"
|
771 |
msgstr ""
|
772 |
|
773 |
+
#: classes/admin/class-admin.php:3287
|
774 |
msgid "Education"
|
775 |
msgstr ""
|
776 |
|
777 |
+
#: classes/admin/class-admin.php:3297
|
778 |
msgid "Hotels and rentals"
|
779 |
msgstr ""
|
780 |
|
781 |
+
#: classes/admin/class-admin.php:3307
|
782 |
msgid "Jobs"
|
783 |
msgstr ""
|
784 |
|
785 |
+
#: classes/admin/class-admin.php:3317
|
786 |
msgid "Local deals"
|
787 |
msgstr ""
|
788 |
|
789 |
+
#: classes/admin/class-admin.php:3327
|
790 |
msgid "Real estate"
|
791 |
msgstr ""
|
792 |
|
793 |
+
#: classes/admin/class-admin.php:3337
|
794 |
msgid "Custom"
|
795 |
msgstr ""
|
796 |
|
797 |
+
#: classes/admin/class-admin.php:3357
|
798 |
msgid "ID of your Google Merchant Center account. It looks like this: 12345678"
|
799 |
msgstr ""
|
800 |
|
801 |
+
#: classes/admin/class-admin.php:3366
|
802 |
msgid "post ID (default)"
|
803 |
msgstr ""
|
804 |
|
805 |
+
#: classes/admin/class-admin.php:3372
|
806 |
msgid "SKU"
|
807 |
msgstr ""
|
808 |
|
809 |
+
#: classes/admin/class-admin.php:3379
|
810 |
msgid "ID for the WooCommerce Google Product Feed. Outputs the post ID with woocommerce_gpf_ prefix *"
|
811 |
msgstr ""
|
812 |
|
813 |
+
#: classes/admin/class-admin.php:3386
|
814 |
msgid "ID for the WooCommerce Google Listings & Ads Plugin. Outputs the post ID with gla_ prefix **"
|
815 |
msgstr ""
|
816 |
|
817 |
+
#: classes/admin/class-admin.php:3390
|
818 |
msgid "Choose a product identifier."
|
819 |
msgstr ""
|
820 |
|
821 |
+
#: classes/admin/class-admin.php:3393
|
822 |
msgid "* This is for users of the WooCommerce Google Product Feed Plugin"
|
823 |
msgstr ""
|
824 |
|
825 |
+
#: classes/admin/class-admin.php:3397
|
826 |
msgid "** This is for users of the WooCommerce Google Listings & Ads Plugin"
|
827 |
msgstr ""
|
828 |
|
|
|
829 |
#: classes/admin/class-admin.php:3420
|
830 |
+
#: classes/admin/class-admin.php:3425
|
831 |
msgid "active"
|
832 |
msgstr ""
|
833 |
|
|
|
834 |
#: classes/admin/class-admin.php:3430
|
835 |
+
#: classes/admin/class-admin.php:3435
|
836 |
msgid "inactive"
|
837 |
msgstr ""
|
838 |
|
|
|
839 |
#: classes/admin/class-admin.php:3440
|
840 |
+
#: classes/admin/class-admin.php:3445
|
841 |
msgid "partially active"
|
842 |
msgstr ""
|
843 |
|
844 |
+
#: classes/admin/class-admin.php:3456
|
845 |
msgid "Pro Feature"
|
846 |
msgstr ""
|
847 |
|
848 |
+
#: classes/admin/class-admin.php:3488
|
849 |
msgid "You have entered an invalid Google Analytics Universal property ID."
|
850 |
msgstr ""
|
851 |
|
852 |
+
#: classes/admin/class-admin.php:3496
|
853 |
msgid "You have entered an invalid Google Analytics 4 measurement ID."
|
854 |
msgstr ""
|
855 |
|
856 |
+
#: classes/admin/class-admin.php:3504
|
857 |
msgid "You have entered an invalid Google Analytics 4 API key."
|
858 |
msgstr ""
|
859 |
|
860 |
+
#: classes/admin/class-admin.php:3512
|
861 |
msgid "You have entered an invalid GA4 property ID."
|
862 |
msgstr ""
|
863 |
|
864 |
+
#: classes/admin/class-admin.php:3520
|
865 |
msgid "You have entered an invalid conversion ID. It only contains 8 to 10 digits."
|
866 |
msgstr ""
|
867 |
|
868 |
+
#: classes/admin/class-admin.php:3528
|
869 |
+
#: classes/admin/class-admin.php:3536
|
870 |
msgid "You have entered an invalid conversion label."
|
871 |
msgstr ""
|
872 |
|
873 |
+
#: classes/admin/class-admin.php:3544
|
874 |
msgid "You have entered an invalid merchant ID. It only contains 6 to 12 digits."
|
875 |
msgstr ""
|
876 |
|
877 |
+
#: classes/admin/class-admin.php:3552
|
878 |
msgid "You have entered an invalid Google Optimize container ID."
|
879 |
msgstr ""
|
880 |
|
881 |
+
#: classes/admin/class-admin.php:3560
|
882 |
msgid "You have entered an invalid Meta (Facebook) pixel ID. It only contains 14 to 16 digits."
|
883 |
msgstr ""
|
884 |
|
885 |
+
#: classes/admin/class-admin.php:3568
|
886 |
msgid "You have entered an invalid Meta (Facebook) CAPI token."
|
887 |
msgstr ""
|
888 |
|
889 |
+
#: classes/admin/class-admin.php:3576
|
890 |
msgid "You have entered an invalid Meta (Facebook) CAPI test_event_code."
|
891 |
msgstr ""
|
892 |
|
893 |
+
#: classes/admin/class-admin.php:3584
|
894 |
msgid "You have entered an invalid Bing Ads UET tag ID. It only contains 7 to 9 digits."
|
895 |
msgstr ""
|
896 |
|
897 |
+
#: classes/admin/class-admin.php:3592
|
898 |
msgid "You have entered an invalid Twitter pixel ID. It only contains 5 to 7 lowercase letters and numbers."
|
899 |
msgstr ""
|
900 |
|
901 |
+
#: classes/admin/class-admin.php:3600
|
902 |
msgid "You have entered an invalid Pinterest pixel ID. It only contains 13 digits."
|
903 |
msgstr ""
|
904 |
|
905 |
+
#: classes/admin/class-admin.php:3608
|
906 |
msgid "You have entered an invalid Snapchat pixel ID."
|
907 |
msgstr ""
|
908 |
|
909 |
+
#: classes/admin/class-admin.php:3616
|
910 |
msgid "You have entered an invalid TikTok pixel ID."
|
911 |
msgstr ""
|
912 |
|
913 |
+
#: classes/admin/class-admin.php:3624
|
914 |
msgid "You have entered an invalid TikTok Events API access token."
|
915 |
msgstr ""
|
916 |
|
917 |
+
#: classes/admin/class-admin.php:3632
|
918 |
msgid "You have entered an invalid TikTok EAPI test_event_code."
|
919 |
msgstr ""
|
920 |
|
921 |
+
#: classes/admin/class-admin.php:3640
|
922 |
msgid "You have entered an invalid Hotjar site ID. It only contains 6 to 9 digits."
|
923 |
msgstr ""
|
924 |
|
925 |
+
#: classes/admin/class-admin.php:3666
|
926 |
msgid "You have entered the Scroll Tracker thresholds in the wrong format. It must be a list of comma separated percentages, like this \"25,50,75,100\""
|
927 |
msgstr ""
|
928 |
|
929 |
+
#: classes/admin/class-admin.php:3685
|
930 |
msgid "You have entered an invalid conversion name. Special characters, quotes and single quotes are not allowed due to security reasons."
|
931 |
msgstr ""
|
932 |
|
948 |
msgstr ""
|
949 |
|
950 |
#: classes/admin/class-ask-for-rating.php:193
|
951 |
+
#: classes/admin/class-notifications.php:180
|
952 |
+
#: classes/admin/class-notifications.php:234
|
953 |
msgid "If the dismiss button is not working, here's why >>"
|
954 |
msgstr ""
|
955 |
|
956 |
+
#: classes/admin/class-notifications.php:132
|
957 |
msgid "Payment Gateway Accuracy Warning"
|
958 |
msgstr ""
|
959 |
|
960 |
+
#: classes/admin/class-notifications.php:145
|
961 |
+
msgid "The following plugin is not compatible with the Pixel Manager for WooCommerce: "
|
962 |
+
msgstr ""
|
963 |
+
|
964 |
+
#: classes/admin/class-notifications.php:151
|
965 |
+
msgid "Version"
|
966 |
+
msgstr ""
|
967 |
+
|
968 |
+
#: classes/admin/class-notifications.php:156
|
969 |
+
msgid "Please disable the plugin as soon as possible."
|
970 |
msgstr ""
|
971 |
|
972 |
+
#: classes/admin/class-notifications.php:160
|
973 |
+
msgid "Find more information about the the reason in our documentation: "
|
974 |
msgstr ""
|
975 |
|
976 |
+
#: classes/admin/class-notifications.php:175
|
|
|
977 |
msgid "Click here to dismiss this warning forever"
|
978 |
msgstr ""
|
979 |
|
980 |
+
#: classes/admin/class-notifications.php:207
|
981 |
+
msgid "Your license for the Pixel Manager for WooCommerce has been removed or has expired. All premium features have been disabled."
|
982 |
msgstr ""
|
983 |
|
984 |
+
#: classes/admin/class-notifications.php:211
|
985 |
+
msgid "More info"
|
986 |
msgstr ""
|
987 |
|
988 |
+
#: classes/admin/class-notifications.php:219
|
989 |
+
msgid "Purchase a new license"
|
990 |
msgstr ""
|
991 |
|
992 |
+
#: classes/admin/class-notifications.php:229
|
993 |
+
msgid "Click here to dismiss this warning"
|
994 |
msgstr ""
|
995 |
|
996 |
#: classes/admin/class-order-columns.php:83
|
1014 |
msgstr ""
|
1015 |
|
1016 |
#: classes/admin/class-order-columns.php:293
|
1017 |
+
msgid "This order was either created by a shop manager, or automatically added by an extension like a subscription plugin. Only orders created by customers are analysed."
|
1018 |
msgstr ""
|
1019 |
|
1020 |
#: classes/admin/class-order-columns.php:301
|
1025 |
msgid "Conversion pixels not fired yet"
|
1026 |
msgstr ""
|
1027 |
|
1028 |
+
#: wgact.php:332
|
1029 |
msgid "Pixel Manager for WooCommerce error"
|
1030 |
msgstr ""
|
1031 |
|
1032 |
+
#: wgact.php:334
|
1033 |
msgid "Your environment doesn't meet all the system requirements listed below."
|
1034 |
msgstr ""
|
1035 |
|
1036 |
+
#: wgact.php:338
|
1037 |
msgid "The WooCommerce plugin needs to be activated"
|
1038 |
msgstr ""
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: woocommerce, google analytics, google ads, facebook, conversion tracking,
|
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 6.1
|
6 |
Requires PHP: 7.3
|
7 |
-
Stable tag: 1.27.
|
8 |
License: GPLv3 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -221,6 +221,15 @@ You can send the link to the front page of your shop too if you think it would b
|
|
221 |
|
222 |
== Changelog ==
|
223 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
= 1.27.8 = 06.12.2022
|
225 |
|
226 |
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 6.1
|
6 |
Requires PHP: 7.3
|
7 |
+
Stable tag: 1.27.9
|
8 |
License: GPLv3 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
221 |
|
222 |
== Changelog ==
|
223 |
|
224 |
+
= 1.27.9 = 09.12.2022
|
225 |
+
|
226 |
+
|
227 |
+
* Tweak: Added case insensitive flag to define() calls to prevent future PHP warnings.
|
228 |
+
* Tweak: Disabled some loggers.
|
229 |
+
* Tweak: Adjusted the woocommerce_ga_disable_tracking filter to only be used if GA is active in the Pixel Manager.
|
230 |
+
* Tweak: Refactored logging.
|
231 |
+
* Tweak: Improved a few descriptions.
|
232 |
+
|
233 |
= 1.27.8 = 06.12.2022
|
234 |
|
235 |
|
vendor/composer/installed.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
'name' => 'sweetcode/pixel-manager-for-woocommerce',
|
4 |
'pretty_version' => 'dev-master',
|
5 |
'version' => 'dev-master',
|
6 |
-
'reference' => '
|
7 |
'type' => 'wordpress-plugin',
|
8 |
'install_path' => __DIR__ . '/../../',
|
9 |
'aliases' => array(),
|
@@ -49,7 +49,7 @@
|
|
49 |
'sweetcode/pixel-manager-for-woocommerce' => array(
|
50 |
'pretty_version' => 'dev-master',
|
51 |
'version' => 'dev-master',
|
52 |
-
'reference' => '
|
53 |
'type' => 'wordpress-plugin',
|
54 |
'install_path' => __DIR__ . '/../../',
|
55 |
'aliases' => array(),
|
3 |
'name' => 'sweetcode/pixel-manager-for-woocommerce',
|
4 |
'pretty_version' => 'dev-master',
|
5 |
'version' => 'dev-master',
|
6 |
+
'reference' => '62bde2ca38bc3f5e9d658b99024c8d937d6b343a',
|
7 |
'type' => 'wordpress-plugin',
|
8 |
'install_path' => __DIR__ . '/../../',
|
9 |
'aliases' => array(),
|
49 |
'sweetcode/pixel-manager-for-woocommerce' => array(
|
50 |
'pretty_version' => 'dev-master',
|
51 |
'version' => 'dev-master',
|
52 |
+
'reference' => '62bde2ca38bc3f5e9d658b99024c8d937d6b343a',
|
53 |
'type' => 'wordpress-plugin',
|
54 |
'install_path' => __DIR__ . '/../../',
|
55 |
'aliases' => array(),
|
wgact.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
* Developer URI: https://sweetcode.com
|
11 |
* Text Domain: woocommerce-google-adwords-conversion-tracking-tag
|
12 |
* Domain path: /languages
|
13 |
-
* * Version: 1.27.
|
14 |
*
|
15 |
* WC requires at least: 3.7
|
16 |
* WC tested up to: 7.1
|
@@ -19,7 +19,7 @@
|
|
19 |
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
20 |
*
|
21 |
**/
|
22 |
-
const WPM_CURRENT_VERSION = '1.27.
|
23 |
// TODO add option checkbox on uninstall and ask if user wants to delete options from db
|
24 |
|
25 |
if ( !defined( 'ABSPATH' ) ) {
|
@@ -28,9 +28,10 @@ if ( !defined( 'ABSPATH' ) ) {
|
|
28 |
}
|
29 |
|
30 |
use WCPM\Classes\Admin\Admin ;
|
|
|
31 |
use WCPM\Classes\Admin\Debug_Info ;
|
32 |
use WCPM\Classes\Admin\Environment_Check ;
|
33 |
-
use WCPM\Classes\Admin\
|
34 |
use WCPM\Classes\Admin\Order_Columns ;
|
35 |
use WCPM\Classes\Database ;
|
36 |
use WCPM\Classes\Deprecated_Filters ;
|
@@ -115,13 +116,13 @@ if ( function_exists( 'wpm_fs' ) ) {
|
|
115 |
protected $options ;
|
116 |
public function __construct()
|
117 |
{
|
118 |
-
define( 'WPM_PLUGIN_PREFIX', 'wpm_' );
|
119 |
-
define( 'WPM_DB_VERSION', '3' );
|
120 |
-
define( 'WPM_DB_OPTIONS_NAME', 'wgact_plugin_options' );
|
121 |
-
define( 'WPM_DB_NOTIFICATIONS_NAME', 'wgact_notifications' );
|
122 |
-
define( 'WPM_PLUGIN_DIR_PATH', plugin_dir_url( __FILE__ ) );
|
123 |
-
define( 'WPM_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
124 |
-
define( 'WPM_DB_RATINGS', 'wgact_ratings' );
|
125 |
require_once dirname( __FILE__ ) . '/vendor/woocommerce/action-scheduler/action-scheduler.php';
|
126 |
// check if WooCommerce is running
|
127 |
// currently this is the most reliable test for single and multisite setups
|
@@ -340,6 +341,7 @@ if ( function_exists( 'wpm_fs' ) ) {
|
|
340 |
// startup all functions
|
341 |
public function init()
|
342 |
{
|
|
|
343 |
|
344 |
if ( is_admin() ) {
|
345 |
// display admin views
|
@@ -347,7 +349,7 @@ if ( function_exists( 'wpm_fs' ) ) {
|
|
347 |
// ask visitor for rating
|
348 |
Ask_For_Rating::get_instance();
|
349 |
// Load admin notification handlers
|
350 |
-
|
351 |
// Show PMW information on the order list page
|
352 |
if ( Environment_Check::get_instance()->is_woocommerce_active() && $this->options['shop']['order_list_info'] ) {
|
353 |
Order_Columns::get_instance();
|
@@ -409,11 +411,6 @@ if ( function_exists( 'wpm_fs' ) ) {
|
|
409 |
}
|
410 |
|
411 |
// initialise the options
|
412 |
-
/**
|
413 |
-
* Noinspection
|
414 |
-
*
|
415 |
-
* @noinspection GrazieInspection
|
416 |
-
*/
|
417 |
private function wpm_options_init()
|
418 |
{
|
419 |
// set options equal to defaults
|
10 |
* Developer URI: https://sweetcode.com
|
11 |
* Text Domain: woocommerce-google-adwords-conversion-tracking-tag
|
12 |
* Domain path: /languages
|
13 |
+
* * Version: 1.27.9
|
14 |
*
|
15 |
* WC requires at least: 3.7
|
16 |
* WC tested up to: 7.1
|
19 |
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
20 |
*
|
21 |
**/
|
22 |
+
const WPM_CURRENT_VERSION = '1.27.9' ;
|
23 |
// TODO add option checkbox on uninstall and ask if user wants to delete options from db
|
24 |
|
25 |
if ( !defined( 'ABSPATH' ) ) {
|
28 |
}
|
29 |
|
30 |
use WCPM\Classes\Admin\Admin ;
|
31 |
+
use WCPM\Classes\Admin\Admin_REST ;
|
32 |
use WCPM\Classes\Admin\Debug_Info ;
|
33 |
use WCPM\Classes\Admin\Environment_Check ;
|
34 |
+
use WCPM\Classes\Admin\Notifications ;
|
35 |
use WCPM\Classes\Admin\Order_Columns ;
|
36 |
use WCPM\Classes\Database ;
|
37 |
use WCPM\Classes\Deprecated_Filters ;
|
116 |
protected $options ;
|
117 |
public function __construct()
|
118 |
{
|
119 |
+
define( 'WPM_PLUGIN_PREFIX', 'wpm_', false );
|
120 |
+
define( 'WPM_DB_VERSION', '3', false );
|
121 |
+
define( 'WPM_DB_OPTIONS_NAME', 'wgact_plugin_options', false );
|
122 |
+
define( 'WPM_DB_NOTIFICATIONS_NAME', 'wgact_notifications', false );
|
123 |
+
define( 'WPM_PLUGIN_DIR_PATH', plugin_dir_url( __FILE__ ), false );
|
124 |
+
define( 'WPM_PLUGIN_BASENAME', plugin_basename( __FILE__ ), false );
|
125 |
+
define( 'WPM_DB_RATINGS', 'wgact_ratings', false );
|
126 |
require_once dirname( __FILE__ ) . '/vendor/woocommerce/action-scheduler/action-scheduler.php';
|
127 |
// check if WooCommerce is running
|
128 |
// currently this is the most reliable test for single and multisite setups
|
341 |
// startup all functions
|
342 |
public function init()
|
343 |
{
|
344 |
+
Admin_REST::get_instance();
|
345 |
|
346 |
if ( is_admin() ) {
|
347 |
// display admin views
|
349 |
// ask visitor for rating
|
350 |
Ask_For_Rating::get_instance();
|
351 |
// Load admin notification handlers
|
352 |
+
Notifications::get_instance();
|
353 |
// Show PMW information on the order list page
|
354 |
if ( Environment_Check::get_instance()->is_woocommerce_active() && $this->options['shop']['order_list_info'] ) {
|
355 |
Order_Columns::get_instance();
|
411 |
}
|
412 |
|
413 |
// initialise the options
|
|
|
|
|
|
|
|
|
|
|
414 |
private function wpm_options_init()
|
415 |
{
|
416 |
// set options equal to defaults
|