Skip to main content

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

  1. Bi-directional sync control - Setting to disable WordPress → BigCommerce sync of post_status changes
  2. Pricing nonce bypass - Optional setting to disable nonce checks for caching compatibility
  3. Cart endpoint nonce control - Disable nonce requirements on cart endpoints
  4. 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
  5. Real-time price refresh toggle - Disable REST API requests for cached sites
  6. Image import options - URL-only vs. full image import modes
  7. Product listing webhooks - Subscribe to correct channel events
  8. 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 sizes
  • bigcommerce/checkout/config - Customize checkout
  • bigcommerce/js_localization - Modify JS messages
  • bigcommerce/cart/menu/show_count - Display cart count
  • get_post_metadata - Filter variants marked unavailable
  • bigcommerce/template/product/single - Use custom Elementor template

Actions

  • bigcommerce/import/product/updated - Runs after product import
  • bigcommerce/import/product/saved - Sync custom fields
  • template_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

  1. Pricing Nonces: Enable "Pricing Nonce Bypass" setting
  2. Cart Nonces: Enable "Disable Cart Endpoint Nonce" setting
  3. Cart Page: Should be excluded from caching
  4. 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

  1. Check cron status: wp cron event list
  2. Verify API credentials
  3. Check import log: BigCommerce → Settings → Diagnostics
  4. Force refresh toggle if products not updating

Missing Prices

  1. Verify pricing nonce bypass is enabled (if using cache)
  2. Check product has price in BigCommerce
  3. Clear WordPress and BigCommerce cache

Cart Issues

  1. Verify cart page exists with [bigcommerce_cart] shortcode
  2. Check cart nonce settings for cached sites
  3. Ensure cart page excluded from caching