BigCommerce Integration
BigCommerce for WordPress v5.0.7.18 (Suma custom fork) provides headless commerce with advanced sync control.
Overview
HHA Sports uses a customized version of the BigCommerce for WordPress plugin maintained by Rhino Group. This fork includes several enhancements over the standard plugin to improve sync control, caching compatibility, and product import flexibility.
Plugin Details
Version: 5.0.7.18
Location: wp-content/plugins/bigcommerce-suma/
Base Plugin: BigCommerce for WordPress v5.0+
Customizations: Maintained by Rhino Group
Key Features
- Bi-directional sync control - Setting to disable WordPress → BigCommerce sync of post_status changes
- Pricing nonce bypass - Optional setting to disable nonce checks for caching compatibility
- Cart endpoint nonce control - Disable nonce requirements on cart endpoints
- Advanced import controls:
- Force refresh all products/categories during sync
- Re-import images from scratch toggle
- Configurable cron schedules for product import
- Control over product deletion behavior
- Real-time price refresh toggle - Disable REST API requests for cached sites
- Image import options - URL-only vs. full image import modes
- Product listing webhooks - Subscribe to correct channel events
- MSF store detection fixes - Handle BigCommerce multi-storefront properly
Suma Fork Changelog (Recent)
v5.0.7.18
- Added setting to control injection of BigCommerce shortcodes into Cart/Checkout pages
v5.0.7.17
- Product delete behavior selection (instead of boolean)
- Bi-directional sync control setting
- Improved existing post check logic
v5.0.7.16
- Remove WordPress attachments that no longer exist in BigCommerce
v5.0.7.15
- Fix for stores incorrectly marked as MSF
v5.0.7.14
- Disable user groups cache flushing (performance improvement)
v5.0.7.13
- Webhook channel event subscription fix
v5.0.7.12
- Remove auto-add products to channel feature (flawed logic)
v5.0.7.11
- Additional cron timeframes for product import
v5.0.7.9 & v5.0.7.8
- Pricing nonce bypass - Disable nonce check based on Customizer setting to prevent errors on cached sites
v5.0.7.7
- Additional logging for product/term updates
v5.0.7.6
- Setting to disable REST API requests for real-time product price refreshes
v5.0.7.5
- Force refresh settings for products and categories
v5.0.7.3
- Ability to reimport images when switching import modes
v5.0.7.2
- Display sale price on products with price ranges
Configuration
Product Sync
Location: BigCommerce → Settings → Product Sync
- Sync Schedule: Daily (default), configurable to other intervals
- Manual Sync: WP-CLI command:
wp bigcommerce import products - Force Refresh: Checkbox to update all products/categories regardless of change status
- Image Import Mode: URL-only or full image import
- Bi-directional Sync: Toggle to prevent WordPress → BigCommerce sync
Cart Settings
Location: BigCommerce → Settings → Cart
- Cart Enabled: Yes (adds "Add to Cart" button, creates cart page)
- Cart Page: Auto-created page with
[bigcommerce_cart]shortcode - Nonce Controls: Optional disable for cached sites
Account Settings
Location: BigCommerce → Settings → Accounts
WordPress user accounts connect to BigCommerce customers:
- Registration page (auto-created with shortcode)
- Profile page
- Address management page
- Order history page
Customizer Settings
Location: Appearance → Customize → BigCommerce
- Pricing Nonce Bypass: Disable nonce field in pricing forms (for WP Rocket/cache)
- Button Labels: Customize "Add to Cart", "Buy Now", etc.
- Colors & Theme: Match site design
- Product Card Layout: Grid display options
Template Overrides
Custom BigCommerce templates in theme:
Child Theme: wp-content/themes/suma-elementor-child/bigcommerce/components/
- Option type templates (customized product option displays)
Parent Theme: wp-content/themes/suma-elementor/bigcommerce/components/
- Standard BigCommerce component overrides
Custom Integrations
Product Custom Fields
wp-content/themes/suma-elementor/inc/integrations/bigcommerce/class-bigcommerce-customfields.php
Imports and manages custom fields from BigCommerce products including:
- Product flags/badges
- Lifestyle galleries
- Technology galleries
- Highlights
- Long descriptions
- Related blog posts
Product Schema
Automatic Product schema.org JSON-LD markup injected in <head> for SEO:
- Product name, image, description
- Brand, SKU, price
- Availability
- Reviews (if applicable)
Category Sorting
Import default product sorting from BigCommerce categories (commented out but available)
Shortcodes
Core BigCommerce Shortcodes
[bigcommerce_cart]- Cart page[bigcommerce_checkout]- Checkout (embedded)[bigcommerce_product id="123"]- Single product display[bigcommerce_product_category id="456"]- Category grid
Custom Shortcodes
Defined in class-bigcommerce.php:
[bc-product-detail type="..."]- Product detail sections[bc-product-specs]- Product specifications table[bc-product-image-gallery]- Custom image gallery
Defined in child theme class-bigcommerce-product.php:
[available_options_table]- Display product options in table format[product_weights_table]- Product weight specifications[bc_product_videos]- Embedded YouTube videos
Key Filters & Actions
Filters
bigcommerce/template/featured_image/size- Control image sizesbigcommerce/checkout/config- Customize checkoutbigcommerce/js_localization- Modify JS messagesbigcommerce/cart/menu/show_count- Display cart countget_post_metadata- Filter variants marked unavailablebigcommerce/template/product/single- Use custom Elementor template
Actions
bigcommerce/import/product/updated- Runs after product importbigcommerce/import/product/saved- Sync custom fieldstemplate_redirect- Force authentication on account pages
Product Display Features
Dynamic Section Visibility
Product detail page sections dynamically show/hide based on content:
- Product badges (flags)
- Highlights section
- Lifestyle gallery
- Technology gallery
- Long description
- Product videos
- Related blog posts
Controlled via filters: pdp_hide_* hooks
Product Videos
YouTube videos from BigCommerce display with responsive embed:
- Automatic responsive wrapper
- Multiple video support
- Custom styling
Caching Considerations
Known Issues with Full-Page Caching
- Pricing Nonces: Enable "Pricing Nonce Bypass" setting
- Cart Nonces: Enable "Disable Cart Endpoint Nonce" setting
- Cart Page: Should be excluded from caching
- Account Pages: Should be excluded from caching
WP Rocket Configuration
Site uses WP Rocket caching. Ensure these pages are excluded:
- Cart page
- Checkout page
- Account pages
- Any page with dynamic BigCommerce content
API Requirements
BigCommerce API Credentials
Configured at: BigCommerce → Settings → API Credentials
Required scopes:
- Products: Read/Write
- Customers: Read/Write
- Orders: Read
- Channels: Read/Write
- Carts: Read/Write
Webhooks
Plugin subscribes to webhooks for:
- Product updates
- Product deletions
- Inventory changes
- Order updates
WP-CLI Commands
# Import products
wp bigcommerce import products
# Clear product cache
wp bigcommerce cache clear
# Reset plugin settings
wp bigcommerce setup reset
Troubleshooting
Product Import Issues
- Check cron status:
wp cron event list - Verify API credentials
- Check import log: BigCommerce → Settings → Diagnostics
- Force refresh toggle if products not updating
Missing Prices
- Verify pricing nonce bypass is enabled (if using cache)
- Check product has price in BigCommerce
- Clear WordPress and BigCommerce cache
Cart Issues
- Verify cart page exists with
[bigcommerce_cart]shortcode - Check cart nonce settings for cached sites
- Ensure cart page excluded from caching
Related Documentation
- Theme System - BigCommerce template customizations
- Marketing Integrations - Klaviyo product tracking
- Development Setup - Local environment configuration