diff --git a/inc/class-main.php b/inc/class-main.php
index ae922ee80..c7a855b77 100644
--- a/inc/class-main.php
+++ b/inc/class-main.php
@@ -599,30 +599,52 @@ public function about_page() {
public function add_black_friday_data( $configs ) {
$config = $configs['default'];
- // translators: %1$s - HTML tag, %2$s - discount, %3$s - HTML tag, %4$s - product name.
- $message_template = __( 'Our biggest sale of the year: %1$sup to %2$s OFF%3$s on %4$s. Don\'t miss this limited-time offer.', 'otter-blocks' );
- $product_label = 'Otter Blocks';
- $discount = '70%';
+ $message = __( 'Advanced blocks, custom CSS, WooCommerce integration. Everything you need to build better pages, without code. Exclusively for existing Otter users.', 'otter-blocks' );
+ $cta_label = __( 'Get Otter Pro', 'otter-blocks' );
$plan = apply_filters( 'product_otter_license_plan', 0 );
$license = apply_filters( 'product_otter_license_key', false );
- $is_pro = 0 < $plan;
+ $status = apply_filters( 'product_otter_license_status', false );
+
+ $is_pro = 'valid' === $status;
+ $is_expired = 'expired' === $status || 'active-expired' === $status;
+ $pro_product_slug = defined( 'OTTER_PRO_BASEFILE' ) ? basename( dirname( OTTER_PRO_BASEFILE ) ) : '';
if ( $is_pro ) {
- // translators: %1$s - HTML tag, %2$s - discount, %3$s - HTML tag, %4$s - product name.
- $message_template = __( 'Get %1$sup to %2$s off%3$s when you upgrade your %4$s plan or renew early.', 'otter-blocks' );
- $product_label = 'Otter Pro';
- $discount = '30%';
- }
-
- $product_label = sprintf( '%s', $product_label );
- $url_params = array(
+ // translators: %s is the discount percentage.
+ $config['plugin_meta_message'] = sprintf( __( 'Black Friday Sale - up to %s off', 'otter-blocks' ), '30%' );
+ // translators: %1$s - discount, %2$s - discount.
+ $message = sprintf( __( 'Upgrade your Otter Pro plan: %1$s off this week. Already on the plan you need? Renew early and save up to %2$s.', 'otter-blocks' ), '30%', '20%' );
+ $cta_label = __( 'See your options', 'otter-blocks' );
+ } elseif ( $is_expired ) {
+ // translators: %s is the discount percentage.
+ $config['plugin_meta_message'] = sprintf( __( 'Black Friday Sale - %s off', 'otter-blocks' ), '50%' );
+ // translators: %s is the discount percentage.
+ $config['upgrade_menu_text'] = sprintf( __( 'BF Sale - %s off', 'otter-blocks' ), '50%' );
+ $message = __( 'Your Otter Pro features are still here, just locked. Renew at a reduced rate this week.', 'otter-blocks' );
+ $cta_label = __( 'Reactivate now', 'otter-blocks' );
+ } else {
+ // translators: %s is the discount percentage.
+ $config['plugin_meta_message'] = sprintf( __( 'Black Friday Sale - %s off', 'otter-blocks' ), '60%' );
+ // translators: %s is the discount percentage.
+ $config['upgrade_menu_text'] = sprintf( __( 'BF Sale - %s off', 'otter-blocks' ), '60%' );
+ // translators: %s - discount.
+ $config['title'] = sprintf( __( 'Otter Pro: %s off this week', 'otter-blocks' ), '60%' );
+ }
+
+ $url_params = array(
'utm_term' => $is_pro ? 'plan-' . $plan : 'free',
'lkey' => ! empty( $license ) ? $license : false,
+ 'expired' => $is_expired ? '1' : false,
);
-
- $config['message'] = sprintf( $message_template, '', $discount, '', $product_label );
- $config['sale_url'] = add_query_arg(
+
+ if ( ( $is_pro || $is_expired ) && ! empty( $pro_product_slug ) ) {
+ $config['plugin_meta_targets'] = array( $pro_product_slug );
+ }
+
+ $config['cta_label'] = $cta_label;
+ $config['message'] = $message;
+ $config['sale_url'] = add_query_arg(
$url_params,
tsdk_translate_link( tsdk_utmify( 'https://themeisle.link/otter-bf', 'bfcm', 'otter' ) )
);
diff --git a/plugins/blocks-animation/blocks-animation.php b/plugins/blocks-animation/blocks-animation.php
index 1f44cddf8..035abd2f0 100644
--- a/plugins/blocks-animation/blocks-animation.php
+++ b/plugins/blocks-animation/blocks-animation.php
@@ -72,19 +72,18 @@ function ( $configs ) {
$config = $configs['default'];
- // translators: %1$s - plugin name, %2$s - plugin name, %3$s - discount.
- $message_template = __( 'Extend %1$s with %2$s – up to %3$s OFF in our biggest sale of the year. Limited time only.', 'blocks-animation' );
-
- $config['message'] = sprintf( $message_template, 'Block Animation', 'Otter Pro Blocks', '70%' );
- $config['sale_url'] = add_query_arg(
+ // translators: 1. Number of free licenses, 2. The price of the product.
+ $config['message'] = sprintf( __( 'You’re using Blocks Animation, and the team behind it is celebrating Black Friday by giving away %1$s licences of Otter Pro. A powerful block collection worth %2$s, with advanced blocks, custom CSS, animations, and WooCommerce integration. Claim yours before they run out.', 'blocks-animation' ), 100, '$69' );
+ $config['plugin_meta_message'] = __( 'Black Friday Sale - Get Otter Pro free', 'blocks-animation' );
+ $config['sale_url'] = add_query_arg(
array(
'utm_term' => 'free',
),
- tsdk_translate_link( tsdk_utmify( 'https://themeisle.link/otter-bf', 'bfcm', 'blocks-animation' ) )
+ tsdk_translate_link( tsdk_utmify( 'https://themeisle.link/otter-claim-bf', 'bfcm', 'blocks-animation' ) )
);
$configs[ BLOCKS_ANIMATION_PRODUCT_SLUG ] = $config;
return $configs;
- }
+ }
);
diff --git a/plugins/blocks-css/blocks-css.php b/plugins/blocks-css/blocks-css.php
index 0531745f8..1a18f1fea 100644
--- a/plugins/blocks-css/blocks-css.php
+++ b/plugins/blocks-css/blocks-css.php
@@ -68,19 +68,18 @@ function ( $configs ) {
$config = $configs['default'];
- // translators: %1$s - plugin name, %2$s - plugin name, %3$s - discount.
- $message_template = __( 'Extend %1$s with %2$s – up to %3$s OFF in our biggest sale of the year. Limited time only.', 'blocks-css' );
-
- $config['message'] = sprintf( $message_template, 'Blocks CSS', 'Otter Pro Blocks', '70%' );
- $config['sale_url'] = add_query_arg(
+ // translators: 1. Number of free licenses, 2. The price of the product.
+ $config['message'] = sprintf( __( 'You’re using Blocks CSS, and the team behind it is celebrating Black Friday by giving away %1$s licences of Otter Pro. A powerful block collection worth %2$s, with advanced blocks, custom CSS, animations, and WooCommerce integration. Claim yours before they run out.', 'blocks-css' ), 100, '$69' );
+ $config['plugin_meta_message'] = __( 'Black Friday Sale - Get Otter Pro free', 'blocks-css' );
+ $config['sale_url'] = add_query_arg(
array(
'utm_term' => 'free',
),
- tsdk_translate_link( tsdk_utmify( 'https://themeisle.link/otter-bf', 'bfcm', 'blocks-css' ) )
+ tsdk_translate_link( tsdk_utmify( 'https://themeisle.link/otter-claim-bf', 'bfcm', 'blocks-css' ) )
);
$configs[ BLOCKS_CSS_PRODUCT_SLUG ] = $config;
return $configs;
- }
+ }
);