Skip to content

Commit

Permalink
A4A: Add 5 hidden Woo extensions to the marketplace (#99372)
Browse files Browse the repository at this point in the history
* add placeholder code changes

* replace placeholder with the real products
  • Loading branch information
travisw authored Feb 26, 2025
1 parent 0d41b75 commit 7c1b26a
Show file tree
Hide file tree
Showing 4 changed files with 210 additions and 0 deletions.
23 changes: 23 additions & 0 deletions client/jetpack-cloud/sections/partner-portal/hooks/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -422,6 +422,29 @@ export function useProductDescription( productSlug: string ): {
'This is a tool to create ajax product filters that make the process of finding products in your store simple and fast.'
);
break;
case 'woocommerce-constellation':
description = translate(
'A flexible, WooCommerce memberships platform to support publishers, purchasing clubs, online learning, associations, and more.'
);
break;
case 'woocommerce-rental-products':
description = translate(
'Sell rental products in your store, manage rental orders and more.'
);
break;
case 'woocommerce-smart-coupons':
description = translate(
'Boost sales and customer loyalty. Create advanced discounts, sell gift cards, set BOGO deals, give store credits, and all types of rule based dynamic discounts with this all-in-one Smart Coupons plugin for WooCommerce.'
);
break;
case 'woocommerce-dynamic-pricing':
description = translate( 'Bulk discounts, role-based pricing and much more.' );
break;
case 'woocommerce-variation-swatches-and-photos':
description = translate(
'Show color and image swatches instead of dropdowns for variable products.'
);
break;
case 'jetpack-stats':
description = translate( 'Powerful analytics to help you understand your audience.' );
break;
Expand Down
16 changes: 16 additions & 0 deletions packages/calypso-products/src/constants/jetpack.ts
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,12 @@ export const PRODUCT_WOOCOMMERCE_ACCOMMODATIONS_BOOKINGS =
export const PRODUCT_WOOCOMMERCE_TAX = 'woocommerce_tax_yearly';
export const PRODUCT_WOOCOMMERCE_WOOPAYMENTS = 'woocommerce_woopayments_yearly';
export const PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS = 'woocommerce_product_filters_yearly';
export const PRODUCT_WOOCOMMERCE_CONSTELLATION = 'woocommerce_constellation_yearly';
export const PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS = 'woocommerce_rental_products_yearly';
export const PRODUCT_WOOCOMMERCE_SMART_COUPONS = 'woocommerce_smart_coupons_yearly';
export const PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING = 'woocommerce_dynamic_pricing_yearly';
export const PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS =
'woocommerce_variation_swatches_and_photos_yearly';

// Backup
export const JETPACK_BACKUP_PRODUCTS_YEARLY = < const >[
Expand Down Expand Up @@ -418,6 +424,11 @@ export const WOOCOMMERCE_PRODUCTS = < const >[
PRODUCT_WOOCOMMERCE_TAX,
PRODUCT_WOOCOMMERCE_WOOPAYMENTS,
PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS,
PRODUCT_WOOCOMMERCE_CONSTELLATION,
PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
PRODUCT_WOOCOMMERCE_SMART_COUPONS,
PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
];

export const JETPACK_PRODUCTS_LIST = < const >[
Expand Down Expand Up @@ -1102,4 +1113,9 @@ export const JETPACK_PRODUCT_RECCOMENDATION_MAP: Record< string, string[] > = {
[ PRODUCT_WOOCOMMERCE_ACCOMMODATIONS_BOOKINGS ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_TAX ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_CONSTELLATION ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_SMART_COUPONS ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
[ PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS ]: [ JETPACK_TAG_FOR_WOOCOMMERCE_STORES ],
};
60 changes: 60 additions & 0 deletions packages/calypso-products/src/products-list.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,11 @@ import {
JETPACK_GROWTH_CATEGORY,
FEATURE_SOCIAL_AUTO_SHARE,
FEATURE_SOCIAL_IMAGE_GENERATOR,
PRODUCT_WOOCOMMERCE_CONSTELLATION,
PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
PRODUCT_WOOCOMMERCE_SMART_COUPONS,
PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
} from './constants';
import { getJetpackProductsShortNames } from './translations';
import type {
Expand Down Expand Up @@ -1883,6 +1888,61 @@ export const WOOCOMMERCE_EXTENSIONS_PRODUCTS: Record< WooCommerceProductSlug, Pr
getProductId: () => 2745,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS,
},
[ PRODUCT_WOOCOMMERCE_CONSTELLATION ]: {
product_name: translate( 'WooCommerce Constellation' ),
product_slug: PRODUCT_WOOCOMMERCE_CONSTELLATION,
type: PRODUCT_WOOCOMMERCE_CONSTELLATION,
term: TERM_ANNUALLY,
bill_period: PLAN_ANNUAL_PERIOD,
categories: [],
getFeatures: () => [],
getProductId: () => 2746,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_CONSTELLATION,
},
[ PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS ]: {
product_name: translate( 'WooCommerce Rental Products' ),
product_slug: PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
type: PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
term: TERM_ANNUALLY,
bill_period: PLAN_ANNUAL_PERIOD,
categories: [],
getFeatures: () => [],
getProductId: () => 2747,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
},
[ PRODUCT_WOOCOMMERCE_SMART_COUPONS ]: {
product_name: translate( 'WooCommerce Smart Coupons' ),
product_slug: PRODUCT_WOOCOMMERCE_SMART_COUPONS,
type: PRODUCT_WOOCOMMERCE_SMART_COUPONS,
term: TERM_ANNUALLY,
bill_period: PLAN_ANNUAL_PERIOD,
categories: [],
getFeatures: () => [],
getProductId: () => 2748,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_SMART_COUPONS,
},
[ PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING ]: {
product_name: translate( 'WooCommerce Dynamic Pricing' ),
product_slug: PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
type: PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
term: TERM_ANNUALLY,
bill_period: PLAN_ANNUAL_PERIOD,
categories: [],
getFeatures: () => [],
getProductId: () => 2749,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
},
[ PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS ]: {
product_name: translate( 'WooCommerce Variation Swatches and Photos' ),
product_slug: PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
type: PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
term: TERM_ANNUALLY,
bill_period: PLAN_ANNUAL_PERIOD,
categories: [],
getFeatures: () => [],
getProductId: () => 2750,
getStoreSlug: () => PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
},
};

export const PRODUCTS_LIST: Record< ProductSlug, Product > = {
Expand Down
111 changes: 111 additions & 0 deletions packages/calypso-products/src/translations.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,11 @@ import {
PRODUCT_JETPACK_SOCIAL_V1_YEARLY,
PRODUCT_JETPACK_SOCIAL_V1_MONTHLY,
PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS,
PRODUCT_WOOCOMMERCE_CONSTELLATION,
PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS,
PRODUCT_WOOCOMMERCE_SMART_COUPONS,
PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING,
PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS,
} from './constants';
import type { FAQ, SelectorProductFeaturesItem } from './types';
import type { TranslateResult } from 'i18n-calypso';
Expand Down Expand Up @@ -1111,6 +1116,21 @@ export const getJetpackProductsLightboxDescription = (): Record< string, Transla
const woocommercProductFiltersLightboxDescription = translate(
'This is a tool to create ajax product filters that make the process of finding products in your store simple and fast.'
);
const woocommerceConstellationLightboxDescription = translate(
'A flexible, WooCommerce memberships platform to support publishers, purchasing clubs, online learning, associations, and more.'
);
const woocommerceRentalProductsLightboxDescription = translate(
'Sell rental products in your store, manage rental orders and more.'
);
const woocommerceSmartCouponsLightboxDescription = translate(
'Boost sales and customer loyalty. Create advanced discounts, sell gift cards, set BOGO deals, give store credits, and all types of rule based dynamic discounts with this all-in-one Smart Coupons plugin for WooCommerce.'
);
const woocommerceDynamicPricingLightboxDescription = translate(
'Bulk discounts, role-based pricing and much more.'
);
const woocommerceVariationSwatchesAndPhotosLightboxDescription = translate(
'Show color and image swatches instead of dropdowns for variable products.'
);

return {
[ PRODUCT_JETPACK_AI_MONTHLY ]: aiAssistantLightboxDescription,
Expand Down Expand Up @@ -1228,6 +1248,12 @@ export const getJetpackProductsLightboxDescription = (): Record< string, Transla
[ PRODUCT_WOOCOMMERCE_TAX ]: woocommerceTaxLightboxDescription,
[ PRODUCT_WOOCOMMERCE_WOOPAYMENTS ]: woocommerceWoopaymentsLightboxDescription,
[ PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS ]: woocommercProductFiltersLightboxDescription,
[ PRODUCT_WOOCOMMERCE_CONSTELLATION ]: woocommerceConstellationLightboxDescription,
[ PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS ]: woocommerceRentalProductsLightboxDescription,
[ PRODUCT_WOOCOMMERCE_SMART_COUPONS ]: woocommerceSmartCouponsLightboxDescription,
[ PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING ]: woocommerceDynamicPricingLightboxDescription,
[ PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS ]:
woocommerceVariationSwatchesAndPhotosLightboxDescription,
};
};

Expand Down Expand Up @@ -2314,6 +2340,85 @@ export const getJetpackProductsBenefits = (): Record< string, Array< TranslateRe
translate( 'Potentially boost SEO when implemented correctly' ),
];

const woocommerceConstellationBenefits = [
translate(
'Integrates seamlessly with WooCommerce to manage memberships, offering perks like exclusive content and discounts.'
),
translate( 'Supports publishers, purchasing clubs, online learning, associations, and more.' ),
translate(
'Offers one-time payments, recurring billing, and free trials to suit various business models.'
),
translate(
'Schedules access to content over time, enhancing member engagement and retention.'
),
translate( 'Allows unlimited membership plans and unlimited members without restrictions.' ),
];

const woocommerceRentalProductsBenefits = [
translate(
'Enables the sale and management of rental products with advanced pricing, availability, and deposit options.'
),
translate(
'Allows customers to select rental dates via a calendar, calculate costs, and add items to their cart.'
),
translate(
'Provides a rentals dashboard with summaries, calendars, inventory management, and tools for efficient oversight.'
),
translate(
'Sends return reminder emails to customers, ensuring timely returns and improved inventory management.'
),
translate(
'Supports both shipped rentals and in-person pick-up/returns, accommodating various business models.'
),
];

const woocommerceSmartCouponsBenefits = [
translate(
'Creates dynamic pricing rules, bulk discounts, and percentage-based offers to boost sales.'
),
translate(
'Sells gift cards with scheduling options, enhancing customer loyalty and increasing revenue.'
),
translate(
'Easily sets up "Buy One, Get One" promotions and offers free gifts based on customizable rules.'
),
translate( 'Generates, exports, and emails thousands of unique coupon codes efficiently.' ),
translate(
'Creates shareable links that auto-apply discounts, simplifying the customer experience and increasing conversions.'
),
];

const woocommerceDynamicPricingBenefits = [
translate(
'Sets up bulk discounts for products with flexible pricing adjustments, including fixed or percentage.'
),
translate(
'Offers discounts based on user roles, allowing for targeted pricing strategies for different customer segments.'
),
translate(
'Applies bulk discounts across entire product categories, streamlining promotional efforts.'
),
translate(
'Allows custom quantity calculations for pricing rules, accommodating various sales strategies.'
),
];

const woocommerceVariationSwatchesAndPhotosBenefits = [
translate(
'Replaces dropdowns with color and image swatches, providing a more intuitive and visually appealing shopping experience.'
),
translate(
'Defines colors and images at both attribute and product levels, offering flexibility in product display.'
),
translate(
'Allows customers to view product variations more clearly, aiding in decision-making and reducing return rates.'
),
translate( 'Integrates smoothly with WooCommerce, ensuring compatibility and ease of use.' ),
translate(
'Enhances product listings by showcasing variations in color, size, style, or any other attribute.'
),
];

const monitorBenefits = [
translate(
'Rapid detection: With our 1-minute interval monitoring, we detect potential issues faster than ever before.'
Expand Down Expand Up @@ -2428,6 +2533,12 @@ export const getJetpackProductsBenefits = (): Record< string, Array< TranslateRe
[ PRODUCT_WOOCOMMERCE_TAX ]: woocommerceTaxBenefits,
[ PRODUCT_WOOCOMMERCE_WOOPAYMENTS ]: woocommerceWoopaymentsBenefits,
[ PRODUCT_WOOCOMMERCE_PRODUCT_FILTERS ]: woocommerceProductFiltersBenefits,
[ PRODUCT_WOOCOMMERCE_CONSTELLATION ]: woocommerceConstellationBenefits,
[ PRODUCT_WOOCOMMERCE_RENTAL_PRODUCTS ]: woocommerceRentalProductsBenefits,
[ PRODUCT_WOOCOMMERCE_SMART_COUPONS ]: woocommerceSmartCouponsBenefits,
[ PRODUCT_WOOCOMMERCE_DYNAMIC_PRICING ]: woocommerceDynamicPricingBenefits,
[ PRODUCT_WOOCOMMERCE_VARIATION_SWATCHES_AND_PHOTOS ]:
woocommerceVariationSwatchesAndPhotosBenefits,
};
};

Expand Down

0 comments on commit 7c1b26a

Please sign in to comment.