Plugin Directory

Changeset 3054430


Ignore:
Timestamp:
03/19/2024 12:27:17 PM (2 years ago)
Author:
gtmserver
Message:

Update to version 2.1.14 from GitHub

Location:
gtm-server-side
Files:
26 edited
1 copied

Legend:

Unmodified
Added
Removed
  • gtm-server-side/tags/2.1.14/README.txt

    r3049292 r3054430  
    44Requires at least: 5.2.0
    55Tested up to: 6.4.2
    6 Stable tag: 2.1.13
     6Stable tag: 2.1.14
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    6767
    6868== Changelog ==
     69= 2.1.14 =
     70* Added sending - Decorate dataLayer event name
     71
    6972= 2.1.13 =
    7073* Custom loader update
  • gtm-server-side/tags/2.1.14/assets/js/javascript.js

    r2915406 r3054430  
    9090            'removed_from_cart',
    9191            function ( e, fragments, cart_hash, $thisbutton ) {
     92                if ( ! $thisbutton.length ) {
     93                    return;
     94                }
     95
    9296                if ( ! $thisbutton.data( 'gtm_item_id' ) ) {
    9397                    return;
     
    198202        item.quantity = item.quantity || 1;
    199203        var eventData = {
    200             'event': 'remove_from_cart',
     204            'event': this.getDataLayerEventName( 'remove_from_cart' ),
    201205            'ecommerce': {
    202206                'currency': varGtmServerSide.currency,
     
    330334
    331335        var eventData = {
    332             'event': 'add_to_cart',
     336            'event': this.getDataLayerEventName( 'add_to_cart' ),
    333337            'ecommerce': {
    334338                'currency': varGtmServerSide.currency,
     
    344348        }
    345349        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;
    346363    }
    347364};
  • gtm-server-side/tags/2.1.14/bootstrap.php

    r2915406 r3054430  
    1717define( 'GTM_SERVER_SIDE_COOKIE_KEEPER_NAME', '_sbp' );
    1818
     19define( 'GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME', '_stape' );
     20
    1921define( 'GTM_SERVER_SIDE_FIELD_VERSION', 'gtm_server_side_version' );
    2022define( 'GTM_SERVER_SIDE_FIELD_PLACEMENT', 'gtm_server_side_placement' );
     
    2527define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_ECOMMERCE', 'gtm_server_side_data_layer_ecommerce' );
    2628define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_USER_DATA', 'gtm_server_side_data_layer_user_data' );
     29define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME', 'gtm_server_side_data_layer_custom_event_name' );
    2730define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_ENABLE', 'gtm_server_side_webhooks_enable' );
    2831define( '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  
    1111 * Plugin URI:        https://wordpress.org/plugins/gtm-server-side/
    1212 * 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.13
     13 * Version:           2.1.14
    1414 * Author:            Stape
    1515 * Author URI:        https://stape.io
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-admin-settings.php

    r2967443 r3054430  
    283283            GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER
    284284        );
     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        );
    285309    }
    286310
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-begincheckout.php

    r2915406 r3054430  
    4545
    4646        $data_layer = array(
    47             'event'     => 'begin_checkout',
     47            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'begin_checkout' ),
    4848            'ecommerce' => array(
    4949                'currency' => esc_attr( get_woocommerce_currency() ),
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-login.php

    r2915406 r3054430  
    5858
    5959        $data_layer = array(
    60             'event' => 'login',
     60            'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'login' ),
    6161        );
    6262
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-purchase.php

    r2915406 r3054430  
    7777
    7878        $data_layer = array(
    79             'event'     => 'purchase',
     79            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'purchase' ),
    8080            'ecommerce' => array(
    8181                '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  
    5858
    5959        $data_layer = array(
    60             'event' => 'sign_up',
     60            'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'sign_up' ),
    6161        );
    6262
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-event-viewcart.php

    r2915406 r3054430  
    4545
    4646        $data_layer = array(
    47             'event'         => 'view_cart',
     47            'event'         => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_cart' ),
    4848            'cart_quantity' => count( $cart ),
    4949            '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  
    4646
    4747        $data_layer = array(
    48             'event'     => 'view_item',
     48            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_item' ),
    4949            'ecommerce' => array(
    5050                'currency' => esc_attr( get_woocommerce_currency() ),
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-frontend-assets.php

    r2892192 r3054430  
    3838
    3939        $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,
    4143        );
    4244
  • gtm-server-side/tags/2.1.14/includes/class-gtm-server-side-helpers.php

    r3049292 r3054430  
    2929
    3030    /**
     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    /**
    3138     * Enable or disable webhook request.
    3239     *
     
    99106
    100107        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 );
    101117    }
    102118
     
    162178
    163179        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;
    164193    }
    165194
     
    413442        );
    414443    }
     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    }
    415457}
  • gtm-server-side/trunk/README.txt

    r3049292 r3054430  
    44Requires at least: 5.2.0
    55Tested up to: 6.4.2
    6 Stable tag: 2.1.13
     6Stable tag: 2.1.14
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    6767
    6868== Changelog ==
     69= 2.1.14 =
     70* Added sending - Decorate dataLayer event name
     71
    6972= 2.1.13 =
    7073* Custom loader update
  • gtm-server-side/trunk/assets/js/javascript.js

    r2915406 r3054430  
    9090            'removed_from_cart',
    9191            function ( e, fragments, cart_hash, $thisbutton ) {
     92                if ( ! $thisbutton.length ) {
     93                    return;
     94                }
     95
    9296                if ( ! $thisbutton.data( 'gtm_item_id' ) ) {
    9397                    return;
     
    198202        item.quantity = item.quantity || 1;
    199203        var eventData = {
    200             'event': 'remove_from_cart',
     204            'event': this.getDataLayerEventName( 'remove_from_cart' ),
    201205            'ecommerce': {
    202206                'currency': varGtmServerSide.currency,
     
    330334
    331335        var eventData = {
    332             'event': 'add_to_cart',
     336            'event': this.getDataLayerEventName( 'add_to_cart' ),
    333337            'ecommerce': {
    334338                'currency': varGtmServerSide.currency,
     
    344348        }
    345349        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;
    346363    }
    347364};
  • gtm-server-side/trunk/bootstrap.php

    r2915406 r3054430  
    1717define( 'GTM_SERVER_SIDE_COOKIE_KEEPER_NAME', '_sbp' );
    1818
     19define( 'GTM_SERVER_SIDE_DATA_LAYER_CUSTOM_EVENT_NAME', '_stape' );
     20
    1921define( 'GTM_SERVER_SIDE_FIELD_VERSION', 'gtm_server_side_version' );
    2022define( 'GTM_SERVER_SIDE_FIELD_PLACEMENT', 'gtm_server_side_placement' );
     
    2527define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_ECOMMERCE', 'gtm_server_side_data_layer_ecommerce' );
    2628define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_USER_DATA', 'gtm_server_side_data_layer_user_data' );
     29define( 'GTM_SERVER_SIDE_FIELD_DATA_LAYER_CUSTOM_EVENT_NAME', 'gtm_server_side_data_layer_custom_event_name' );
    2730define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_ENABLE', 'gtm_server_side_webhooks_enable' );
    2831define( 'GTM_SERVER_SIDE_FIELD_WEBHOOKS_CONTAINER_URL', 'gtm_server_side_webhooks_container_url' );
  • gtm-server-side/trunk/gtm-server-side.php

    r3049292 r3054430  
    1111 * Plugin URI:        https://wordpress.org/plugins/gtm-server-side/
    1212 * 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.13
     13 * Version:           2.1.14
    1414 * Author:            Stape
    1515 * Author URI:        https://stape.io
  • gtm-server-side/trunk/includes/class-gtm-server-side-admin-settings.php

    r2967443 r3054430  
    283283            GTM_SERVER_SIDE_ADMIN_GROUP_DATA_LAYER
    284284        );
     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        );
    285309    }
    286310
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-begincheckout.php

    r2915406 r3054430  
    4545
    4646        $data_layer = array(
    47             'event'     => 'begin_checkout',
     47            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'begin_checkout' ),
    4848            'ecommerce' => array(
    4949                'currency' => esc_attr( get_woocommerce_currency() ),
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-login.php

    r2915406 r3054430  
    5858
    5959        $data_layer = array(
    60             'event' => 'login',
     60            'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'login' ),
    6161        );
    6262
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-purchase.php

    r2915406 r3054430  
    7777
    7878        $data_layer = array(
    79             'event'     => 'purchase',
     79            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'purchase' ),
    8080            'ecommerce' => array(
    8181                'transaction_id'  => esc_attr( $order->get_order_number() ),
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-register.php

    r2915406 r3054430  
    5858
    5959        $data_layer = array(
    60             'event' => 'sign_up',
     60            'event' => GTM_Server_Side_Helpers::get_data_layer_event_name( 'sign_up' ),
    6161        );
    6262
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-viewcart.php

    r2915406 r3054430  
    4545
    4646        $data_layer = array(
    47             'event'         => 'view_cart',
     47            'event'         => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_cart' ),
    4848            'cart_quantity' => count( $cart ),
    4949            'cart_total'    => GTM_Server_Side_WC_Helpers::instance()->formatted_price(
  • gtm-server-side/trunk/includes/class-gtm-server-side-event-viewitem.php

    r2871846 r3054430  
    4646
    4747        $data_layer = array(
    48             'event'     => 'view_item',
     48            'event'     => GTM_Server_Side_Helpers::get_data_layer_event_name( 'view_item' ),
    4949            'ecommerce' => array(
    5050                'currency' => esc_attr( get_woocommerce_currency() ),
  • gtm-server-side/trunk/includes/class-gtm-server-side-frontend-assets.php

    r2892192 r3054430  
    3838
    3939        $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,
    4143        );
    4244
  • gtm-server-side/trunk/includes/class-gtm-server-side-helpers.php

    r3049292 r3054430  
    2929
    3030    /**
     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    /**
    3138     * Enable or disable webhook request.
    3239     *
     
    99106
    100107        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 );
    101117    }
    102118
     
    162178
    163179        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;
    164193    }
    165194
     
    413442        );
    414443    }
     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    }
    415457}
Note: See TracChangeset for help on using the changeset viewer.