Changeset 3054430
- Timestamp:
- 03/19/2024 12:27:17 PM (2 years ago)
- Location:
- gtm-server-side
- Files:
-
- 26 edited
- 1 copied
-
tags/2.1.14 (copied) (copied from gtm-server-side/trunk)
-
tags/2.1.14/README.txt (modified) (2 diffs)
-
tags/2.1.14/assets/js/javascript.js (modified) (4 diffs)
-
tags/2.1.14/bootstrap.php (modified) (2 diffs)
-
tags/2.1.14/gtm-server-side.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-admin-settings.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-begincheckout.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-login.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-purchase.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-register.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-viewcart.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-event-viewitem.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-frontend-assets.php (modified) (1 diff)
-
tags/2.1.14/includes/class-gtm-server-side-helpers.php (modified) (4 diffs)
-
trunk/README.txt (modified) (2 diffs)
-
trunk/assets/js/javascript.js (modified) (4 diffs)
-
trunk/bootstrap.php (modified) (2 diffs)
-
trunk/gtm-server-side.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-admin-settings.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-begincheckout.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-login.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-purchase.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-register.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-viewcart.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-event-viewitem.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-frontend-assets.php (modified) (1 diff)
-
trunk/includes/class-gtm-server-side-helpers.php (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
gtm-server-side/tags/2.1.14/README.txt
r3049292 r3054430 4 4 Requires at least: 5.2.0 5 5 Tested up to: 6.4.2 6 Stable tag: 2.1.1 36 Stable tag: 2.1.14 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 67 67 68 68 == Changelog == 69 = 2.1.14 = 70 * Added sending - Decorate dataLayer event name 71 69 72 = 2.1.13 = 70 73 * Custom loader update -
gtm-server-side/tags/2.1.14/assets/js/javascript.js
r2915406 r3054430 90 90 'removed_from_cart', 91 91 function ( e, fragments, cart_hash, $thisbutton ) { 92 if ( ! $thisbutton.length ) { 93 return; 94 } 95 92 96 if ( ! $thisbutton.data( 'gtm_item_id' ) ) { 93 97 return; … … 198 202 item.quantity = item.quantity || 1; 199 203 var eventData = { 200 'event': 'remove_from_cart',204 'event': this.getDataLayerEventName( 'remove_from_cart' ), 201 205 'ecommerce': { 202 206 'currency': varGtmServerSide.currency, … … 330 334 331 335 var eventData = { 332 'event': 'add_to_cart',336 'event': this.getDataLayerEventName( 'add_to_cart' ), 333 337 'ecommerce': { 334 338 'currency': varGtmServerSide.currency, … … 344 348 } 345 349 dataLayer.push( eventData ); 350 }, 351 352 /** 353 * Return data layer event name. 354 * 355 * @param string $event_name Event name. 356 * @return string 357 */ 358 getDataLayerEventName: function( event_name ) { 359 if ( 'yes' === varGtmServerSide.is_custom_event_name ) { 360 return event_name + varGtmServerSide.DATA_LAYER_CUSTOM_EVENT_NAME; 361 } 362 return event_name; 346 363 } 347 364 }; -
gtm-server-side/tags/2.1.14/bootstrap.php
r2915406 r3054430 17 17 define( 'GTM_SERVER_SIDE_COOKIE_KEEPER_NAME', '_sbp' ); 18 18 19 define( 'GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME', '_stape' ); 20 19 21 define( 'GTM_SERVER_SIDE_FIELD_VERSION', 'gtm_server_side_version' ); 20 22 define( 'GTM_SERVER_SIDE_FIELD_PLACEMENT', 'gtm_server_side_placement' ); … … 25 27 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_ECOMMERCE', 'gtm_server_side_data_layer_ecommerce' ); 26 28 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_USER_DATA', 'gtm_server_side_data_layer_user_data' ); 29 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME', 'gtm_server_side_data_layer_custom_event_name' ); 27 30 define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_ENABLE', 'gtm_server_side_webhooks_enable' ); 28 31 define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_CONTAINER_URL', 'gtm_server_side_webhooks_container_url' ); -
gtm-server-side/tags/2.1.14/gtm-server-side.php
r3049292 r3054430 11 11 * Plugin URI: https://wordpress.org/plugins/gtm-server-side/ 12 12 * Description: Enhance conversion tracking by implementing server-side tagging using server Google Tag Manager container. Effortlessly configure data layer events in web GTM, send webhooks, set up custom loader, and extend cookie lifetime. 13 * Version: 2.1.1 313 * Version: 2.1.14 14 14 * Author: Stape 15 15 * Author URI: https://stape.io -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-admin-settings.php
r2967443 r3054430 283 283 GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER 284 284 ); 285 286 register_setting( 287 GTM_SERVER_SIDE_ADMIN_GROUP, 288 GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME, 289 array( 290 'sanitize_callback' => 'GTM_Server_Side_Helpers::sanitize_bool', 291 ) 292 ); 293 add_settings_field( 294 GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME, 295 __( 'Decorate dataLayer event name', 'gtm-server-side' ), 296 function() { 297 echo '<input 298 type="checkbox" 299 id="' . esc_attr( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ) . '" 300 name="' . esc_attr( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ) . '" 301 ' . checked( GTM_Server_Side_Helpers::get_option( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ), 'yes', false ) . ' 302 value="yes">'; 303 echo '<br>'; 304 esc_html_e( 'We will append \'_stape\' to event names in your dataLayer to avoid potential conflicts and/or tag misfire with your existing events.', 'gtm-server-side' ); 305 }, 306 GTM_SERVER_SIDE_ADMIN_SLUG, 307 GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER 308 ); 285 309 } 286 310 -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-begincheckout.php
r2915406 r3054430 45 45 46 46 $data_layer = array( 47 'event' => 'begin_checkout',47 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'begin_checkout' ), 48 48 'ecommerce' => array( 49 49 'currency' => esc_attr( get_woocommerce_currency() ), -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-login.php
r2915406 r3054430 58 58 59 59 $data_layer = array( 60 'event' => 'login',60 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'login' ), 61 61 ); 62 62 -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-purchase.php
r2915406 r3054430 77 77 78 78 $data_layer = array( 79 'event' => 'purchase',79 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'purchase' ), 80 80 'ecommerce' => array( 81 81 'transaction_id' => esc_attr( $order->get_order_number() ), -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-register.php
r2915406 r3054430 58 58 59 59 $data_layer = array( 60 'event' => 'sign_up',60 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'sign_up' ), 61 61 ); 62 62 -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-viewcart.php
r2915406 r3054430 45 45 46 46 $data_layer = array( 47 'event' => 'view_cart',47 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_cart' ), 48 48 'cart_quantity' => count( $cart ), 49 49 'cart_total' => GTM_Server_Side_WC_Helpers::instance()->formatted_price( -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-viewitem.php
r2871846 r3054430 46 46 47 47 $data_layer = array( 48 'event' => 'view_item',48 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_item' ), 49 49 'ecommerce' => array( 50 50 'currency' => esc_attr( get_woocommerce_currency() ), -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-frontend-assets.php
r2892192 r3054430 38 38 39 39 $scripts = array( 40 'currency' => esc_attr( get_woocommerce_currency() ), 40 'currency' => esc_attr( get_woocommerce_currency() ), 41 'is_custom_event_name' => GTM_Server_Side_Helpers::get_data_layer_custom_event_name(), 42 'DATA_LAYER_CUSTOM_EVENT_NAME' => GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME, 41 43 ); 42 44 -
gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-helpers.php
r3049292 r3054430 29 29 30 30 /** 31 * Enable or disable data layer custom event name. 32 * 33 * @var bool 34 */ 35 private static $is_enable_data_layer_custom_event_name; 36 37 /** 31 38 * Enable or disable webhook request. 32 39 * … … 99 106 100 107 return $url; 108 } 109 110 /** 111 * Return data layer custom event name. 112 * 113 * @return string 114 */ 115 public static function get_data_layer_custom_event_name() { 116 return self::get_option( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ); 101 117 } 102 118 … … 162 178 163 179 return static::$is_enable_data_layer_user_data; 180 } 181 182 /** 183 * Enable or disable data layer custom event name. 184 * 185 * @return string 186 */ 187 public static function is_enable_data_layer_custom_event_name() { 188 if ( null === static::$is_enable_data_layer_custom_event_name ) { 189 static::$is_enable_data_layer_custom_event_name = GTM_SERVER_SIDE_FIELD_VALUE_YES === self::get_data_layer_custom_event_name(); 190 } 191 192 return static::$is_enable_data_layer_custom_event_name; 164 193 } 165 194 … … 413 442 ); 414 443 } 444 445 /** 446 * Return data layer event name. 447 * 448 * @param string $event_name Event name. 449 * @return string 450 */ 451 public static function get_data_layer_event_name( $event_name ) { 452 if ( self::is_enable_data_layer_custom_event_name() ) { 453 return $event_name . GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME; 454 } 455 return $event_name; 456 } 415 457 } -
gtm-server-side/trunk/README.txt
r3049292 r3054430 4 4 Requires at least: 5.2.0 5 5 Tested up to: 6.4.2 6 Stable tag: 2.1.1 36 Stable tag: 2.1.14 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 67 67 68 68 == Changelog == 69 = 2.1.14 = 70 * Added sending - Decorate dataLayer event name 71 69 72 = 2.1.13 = 70 73 * Custom loader update -
gtm-server-side/trunk/assets/js/javascript.js
r2915406 r3054430 90 90 'removed_from_cart', 91 91 function ( e, fragments, cart_hash, $thisbutton ) { 92 if ( ! $thisbutton.length ) { 93 return; 94 } 95 92 96 if ( ! $thisbutton.data( 'gtm_item_id' ) ) { 93 97 return; … … 198 202 item.quantity = item.quantity || 1; 199 203 var eventData = { 200 'event': 'remove_from_cart',204 'event': this.getDataLayerEventName( 'remove_from_cart' ), 201 205 'ecommerce': { 202 206 'currency': varGtmServerSide.currency, … … 330 334 331 335 var eventData = { 332 'event': 'add_to_cart',336 'event': this.getDataLayerEventName( 'add_to_cart' ), 333 337 'ecommerce': { 334 338 'currency': varGtmServerSide.currency, … … 344 348 } 345 349 dataLayer.push( eventData ); 350 }, 351 352 /** 353 * Return data layer event name. 354 * 355 * @param string $event_name Event name. 356 * @return string 357 */ 358 getDataLayerEventName: function( event_name ) { 359 if ( 'yes' === varGtmServerSide.is_custom_event_name ) { 360 return event_name + varGtmServerSide.DATA_LAYER_CUSTOM_EVENT_NAME; 361 } 362 return event_name; 346 363 } 347 364 }; -
gtm-server-side/trunk/bootstrap.php
r2915406 r3054430 17 17 define( 'GTM_SERVER_SIDE_COOKIE_KEEPER_NAME', '_sbp' ); 18 18 19 define( 'GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME', '_stape' ); 20 19 21 define( 'GTM_SERVER_SIDE_FIELD_VERSION', 'gtm_server_side_version' ); 20 22 define( 'GTM_SERVER_SIDE_FIELD_PLACEMENT', 'gtm_server_side_placement' ); … … 25 27 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_ECOMMERCE', 'gtm_server_side_data_layer_ecommerce' ); 26 28 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_USER_DATA', 'gtm_server_side_data_layer_user_data' ); 29 define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME', 'gtm_server_side_data_layer_custom_event_name' ); 27 30 define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_ENABLE', 'gtm_server_side_webhooks_enable' ); 28 31 define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_CONTAINER_URL', 'gtm_server_side_webhooks_container_url' ); -
gtm-server-side/trunk/gtm-server-side.php
r3049292 r3054430 11 11 * Plugin URI: https://wordpress.org/plugins/gtm-server-side/ 12 12 * Description: Enhance conversion tracking by implementing server-side tagging using server Google Tag Manager container. Effortlessly configure data layer events in web GTM, send webhooks, set up custom loader, and extend cookie lifetime. 13 * Version: 2.1.1 313 * Version: 2.1.14 14 14 * Author: Stape 15 15 * Author URI: https://stape.io -
gtm-server-side/trunk/includes/class-gtm-server-side-admin-settings.php
r2967443 r3054430 283 283 GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER 284 284 ); 285 286 register_setting( 287 GTM_SERVER_SIDE_ADMIN_GROUP, 288 GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME, 289 array( 290 'sanitize_callback' => 'GTM_Server_Side_Helpers::sanitize_bool', 291 ) 292 ); 293 add_settings_field( 294 GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME, 295 __( 'Decorate dataLayer event name', 'gtm-server-side' ), 296 function() { 297 echo '<input 298 type="checkbox" 299 id="' . esc_attr( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ) . '" 300 name="' . esc_attr( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ) . '" 301 ' . checked( GTM_Server_Side_Helpers::get_option( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ), 'yes', false ) . ' 302 value="yes">'; 303 echo '<br>'; 304 esc_html_e( 'We will append \'_stape\' to event names in your dataLayer to avoid potential conflicts and/or tag misfire with your existing events.', 'gtm-server-side' ); 305 }, 306 GTM_SERVER_SIDE_ADMIN_SLUG, 307 GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER 308 ); 285 309 } 286 310 -
gtm-server-side/trunk/includes/class-gtm-server-side-event-begincheckout.php
r2915406 r3054430 45 45 46 46 $data_layer = array( 47 'event' => 'begin_checkout',47 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'begin_checkout' ), 48 48 'ecommerce' => array( 49 49 'currency' => esc_attr( get_woocommerce_currency() ), -
gtm-server-side/trunk/includes/class-gtm-server-side-event-login.php
r2915406 r3054430 58 58 59 59 $data_layer = array( 60 'event' => 'login',60 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'login' ), 61 61 ); 62 62 -
gtm-server-side/trunk/includes/class-gtm-server-side-event-purchase.php
r2915406 r3054430 77 77 78 78 $data_layer = array( 79 'event' => 'purchase',79 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'purchase' ), 80 80 'ecommerce' => array( 81 81 'transaction_id' => esc_attr( $order->get_order_number() ), -
gtm-server-side/trunk/includes/class-gtm-server-side-event-register.php
r2915406 r3054430 58 58 59 59 $data_layer = array( 60 'event' => 'sign_up',60 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'sign_up' ), 61 61 ); 62 62 -
gtm-server-side/trunk/includes/class-gtm-server-side-event-viewcart.php
r2915406 r3054430 45 45 46 46 $data_layer = array( 47 'event' => 'view_cart',47 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_cart' ), 48 48 'cart_quantity' => count( $cart ), 49 49 'cart_total' => GTM_Server_Side_WC_Helpers::instance()->formatted_price( -
gtm-server-side/trunk/includes/class-gtm-server-side-event-viewitem.php
r2871846 r3054430 46 46 47 47 $data_layer = array( 48 'event' => 'view_item',48 'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_item' ), 49 49 'ecommerce' => array( 50 50 'currency' => esc_attr( get_woocommerce_currency() ), -
gtm-server-side/trunk/includes/class-gtm-server-side-frontend-assets.php
r2892192 r3054430 38 38 39 39 $scripts = array( 40 'currency' => esc_attr( get_woocommerce_currency() ), 40 'currency' => esc_attr( get_woocommerce_currency() ), 41 'is_custom_event_name' => GTM_Server_Side_Helpers::get_data_layer_custom_event_name(), 42 'DATA_LAYER_CUSTOM_EVENT_NAME' => GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME, 41 43 ); 42 44 -
gtm-server-side/trunk/includes/class-gtm-server-side-helpers.php
r3049292 r3054430 29 29 30 30 /** 31 * Enable or disable data layer custom event name. 32 * 33 * @var bool 34 */ 35 private static $is_enable_data_layer_custom_event_name; 36 37 /** 31 38 * Enable or disable webhook request. 32 39 * … … 99 106 100 107 return $url; 108 } 109 110 /** 111 * Return data layer custom event name. 112 * 113 * @return string 114 */ 115 public static function get_data_layer_custom_event_name() { 116 return self::get_option( GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME ); 101 117 } 102 118 … … 162 178 163 179 return static::$is_enable_data_layer_user_data; 180 } 181 182 /** 183 * Enable or disable data layer custom event name. 184 * 185 * @return string 186 */ 187 public static function is_enable_data_layer_custom_event_name() { 188 if ( null === static::$is_enable_data_layer_custom_event_name ) { 189 static::$is_enable_data_layer_custom_event_name = GTM_SERVER_SIDE_FIELD_VALUE_YES === self::get_data_layer_custom_event_name(); 190 } 191 192 return static::$is_enable_data_layer_custom_event_name; 164 193 } 165 194 … … 413 442 ); 414 443 } 444 445 /** 446 * Return data layer event name. 447 * 448 * @param string $event_name Event name. 449 * @return string 450 */ 451 public static function get_data_layer_event_name( $event_name ) { 452 if ( self::is_enable_data_layer_custom_event_name() ) { 453 return $event_name . GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME; 454 } 455 return $event_name; 456 } 415 457 }
Note: See TracChangeset
for help on using the changeset viewer.