PluginProbe
SellKit – Funnel builder and checkout optimizer for WooCommerce to sell more, faster / 2.7.0
SellKit – Funnel builder and checkout optimizer for WooCommerce to sell more, faster v2.7.0
2.7.0 2.6.0 trunk 1.1.0 1.1.4 1.2.1 1.2.2 1.2.3 1.2.5 1.2.9 1.3.1 1.3.2 1.5.0 1.5.1 1.5.4 1.5.7 1.5.8 1.5.9 1.6.2 1.6.5 1.6.8 1.7.2 1.7.4 1.7.5 1.7.9 All 43 releases
← All changes | includes/functions.php +51 -0 1.5.02.7.0 View file →
@@ -1,5 +1,7 @@
1 1 <?php
2 +defined( 'ABSPATH' ) || exit;
3 +
2 4 if ( ! function_exists( 'sellkit_update_option' ) ) {
3 5 /**
4 6 * Update option from options storage.
5 7 *
@@ -70,8 +72,24 @@
70 72 return $value;
71 73 }
72 74 }
73 75
76 +if ( ! function_exists( 'sellkit_decode_entity_title' ) ) {
77 + /**
78 + * Decode HTML entities in titles for JSON/React (fixes literal &#8211; etc. in chart headers).
79 + *
80 + * @param string $title Title string.
81 + * @return string
82 + */
83 + function sellkit_decode_entity_title( $title ) {
84 + if ( ! is_string( $title ) || '' === $title ) {
85 + return $title;
86 + }
87 +
88 + return html_entity_decode( $title, ENT_QUOTES | ENT_HTML5, 'UTF-8' );
89 + }
90 +}
91 +
74 92 /**
75 93 * Delete option from options storage.
76 94 *
77 95 * @param string $option Option name.
@@ -171,6 +189,39 @@
171 189 }
172 190
173 191 end( $array );
174 192 return key( $array );
193 + }
194 +}
195 +
196 +add_action( 'woocommerce_removed_coupon', 'sellkit_set_cookie_after_auto_apply_coupon_removed', 10, 1 );
197 +
198 +/**
199 + * Create cookie for deleted auto apply coupon.
200 + *
201 + * @param string $coupon_code coupon code.
202 + */
203 +function sellkit_set_cookie_after_auto_apply_coupon_removed( $coupon_code ) {
204 + $cookie_value = null;
205 + $parsed_url = wp_parse_url( site_url() );
206 + $domain = $parsed_url['host'];
207 +
208 + if ( isset( $_COOKIE['sellkit_rejected_coupon'] ) ) {
209 + $cookie_value = sanitize_text_field( wp_unslash( $_COOKIE['sellkit_rejected_coupon'] ) );
210 + }
211 +
212 + $cookie_value = $cookie_value . ',' . $coupon_code;
213 + setcookie( 'sellkit_rejected_coupon', $cookie_value, time() + 600, '/', $domain );
214 +}
215 +
216 +add_action( 'woocommerce_checkout_order_processed', 'sellkit_remove_rejected_auto_apply_coupon_cookie' );
217 +
218 +/**
219 + * Remove cookie after make an order.
220 + */
221 +function sellkit_remove_rejected_auto_apply_coupon_cookie() {
222 + if ( isset( $_COOKIE['sellkit_rejected_coupon'] ) ) {
223 + $parsed_url = wp_parse_url( site_url() );
224 + $domain = $parsed_url['host'];
225 + setcookie( 'sellkit_rejected_coupon', '', time() - 600, '/', $domain );
175 226 }
176 227 }