Every BigCommerce for WP fix we catalog
SEOLZ catalogs 20 fixes for BigCommerce for WP across 5 areas — SEO, answer-engine readiness, accessibility, security and site-health. Each lists the exact steps for BigCommerce for WP, with a link to the official docs.
SEO · 5 fixes
Meta description too shortModerate effort
Expand your meta description to 120–160 characters so Google displays a compelling, complete snippet in search results that drives more clicks to your store.
On BigCommerce for WP
- Meta descriptions for products/categories synced from BigCommerce are managed in the BigCommerce admin (see BigCommerce steps above); changes sync to WordPress automatically.
- For WordPress-native pages that use BigCommerce for WP, install Yoast SEO on WordPress and follow the WooCommerce/WordPress steps to set meta descriptions for those pages.
<meta name="description" content="Shop the official Nike national team jerseys — advanced Dri-FIT heat tech meets bold heritage design. Free shipping on orders over $75. Explore the full collection now.">Place this inside the <head> element of your HTML page. Replace the content value with your 120–160 character description.
Missing h1Quick win
Add a single, descriptive H1 tag to every page that currently lacks one, clearly stating the page's main topic.
On BigCommerce for WP
- Product and category H1s are controlled by the BigCommerce storefront, not the WordPress theme. Refer to the BigCommerce platform steps above for product and category H1s.
- For WordPress pages/posts that embed BigCommerce content, edit the page in Gutenberg → ensure the page Title field at the top of the editor is filled in (this becomes the `<h1>` via most themes).
- If the theme suppresses the post title, use Appearance → Theme File Editor → 'page.php' to restore `<h1 class="entry-title"><?php the_title(); ?></h1>`.
<h1>Women's Running Shoes</h1>Place exactly one of these per page, as the first heading in the main content area.
Missing titleQuick win
Add a unique, descriptive title tag (30–60 characters) to every page that is missing one.
On BigCommerce for WP
- Product titles are managed inside BigCommerce — log in to your BigCommerce control panel → Products → select the product → SEO tab → Page Title, then sync back to WordPress.
- For WordPress pages/posts outside the store, use Yoast SEO or Rank Math as described in the WordPress.org steps above.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Slim Bifold Leather Wallet | BrandName</title>
</head>
<body>
<!-- page content -->
</body>
</html>Place this inside the <head> element of every HTML page. Keep the text between 30–60 characters.
Seo product description missingModerate effort
Write and publish a 200–400 word product description covering what the product is, its key specs, who it's for, and how to use it.
On BigCommerce for WP
- Manage your product descriptions directly in the BigCommerce control panel (Products → View → Description tab), as the WordPress plugin syncs content from BigCommerce.
- After saving in BigCommerce, trigger a sync in WordPress under BigCommerce → Products → Import.
<section class="product-description">
<h2>About This Product</h2>
<p>
The <strong>Trailblazer 500 Waterproof Hiking Boot</strong> is a lightweight,
full-grain leather boot built for all-day comfort on rugged mountain trails.
Its Gore-Tex membrane keeps feet dry in rain and creek crossings while the
Vibram outsole delivers confident grip on wet rock and loose scree.
</p>
<p>
Designed for day hikers and weekend backpackers who want reliable protection
without the weight of a mountaineering boot, the Trailblazer 500 strikes the
ideal balance between support and agility. The padded collar and gusseted
tongue prevent trail debris from entering the boot, and the cushioned EVA
midsole absorbs impact mile after mile.
</p>
<h3>Key Specifications</h3>
<ul>
<li><strong>Upper:</strong> Full-grain leather with Gore-Tex waterproof lining</li>
<li><strong>Outsole:</strong> Vibram Megagrip rubber</li>
<li><strong>Weight:</strong> 680 g / pair (size UK 9)</li>
<li><strong>Shaft height:</strong> Mid (ankle) cut</li>
<li><strong>Available widths:</strong> Standard and Wide</li>
</ul>
<h3>How to Use</h3>
<p>
Lace firmly for ankle support on uneven terrain. Break the boot in over two
or three shorter walks before a full-day hike. Apply a water-repellent spray
to the leather upper every 20–30 hours of trail use to maintain waterproofing.
</p>
</section>Minimum viable product description markup — paste inside your product page's <main> or article element.
Seo product description thinModerate effort
Expand every product description to at least 300 words of unique, keyword-rich content that answers real shopper questions and gives Google enough text to understand and rank the page.
On BigCommerce for WP
- Manage product descriptions via the BigCommerce admin panel (same steps as BigCommerce above); the WordPress plugin syncs content automatically — do not edit descriptions in the WordPress editor as they will be overwritten on sync.
<section class="product-description" aria-label="Product description">
<h2>About This Product</h2>
<p>
Write your opening paragraph here (2–3 sentences introducing the product,
its primary benefit, and who it is for). Aim for a natural, engaging tone
that mirrors how your customers talk about this type of product.
</p>
<h3>Key Features</h3>
<ul>
<li><strong>Feature One:</strong> Explain the benefit, not just the spec.</li>
<li><strong>Feature Two:</strong> Include the detail a shopper needs to decide.</li>
<li><strong>Feature Three:</strong> Use the words your customers actually search for.</li>
<li><strong>Feature Four:</strong> Keep each bullet to one clear point.</li>
</ul>
<h3>Materials & Specifications</h3>
<p>
Describe materials, dimensions, weight, compatibility, or other technical
details relevant to your product category. Specificity builds trust and
captures long-tail searches (e.g. "100% organic cotton", "fits 13-inch laptops").
</p>
<h3>How to Use</h3>
<p>
Walk the customer through setup, application, or use in plain language.
Answer the most common pre-purchase questions here so shoppers feel confident.
</p>
<h3>Why Our Customers Love It</h3>
<p>
Reinforce with a sentence or two of social proof context or a unique selling
point that differentiates this product from generic alternatives.
</p>
</section>Ideal semantic structure for a product description section on any platform's product page template.
Answer Engine Optimization · 5 fixes
Low review countModerate effort
Collect at least 5 published reviews so Google will display star ratings in search results alongside your product listings.
On BigCommerce for WP
- Reviews are managed on the BigCommerce side — log in to your BigCommerce control panel and follow the BigCommerce platform steps above.
- On the WordPress side, ensure your theme correctly renders the review count passed from BigCommerce; check your product template for the 'aggregateRating' output.
<!-- Product structured data with AggregateRating -->
<!-- Note: Google will only show review stars when reviewCount >= 5 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Your Product Name",
"image": [
"https://example.com/images/product-front.jpg",
"https://example.com/images/product-side.jpg"
],
"description": "A clear, accurate description of your product.",
"sku": "SKU-12345",
"mpn": "MPN-12345",
"brand": {
"@type": "Brand",
"name": "Your Brand"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "12",
"bestRating": "5",
"worstRating": "1"
},
"offers": {
"@type": "Offer",
"url": "https://example.com/products/your-product",
"priceCurrency": "USD",
"price": "49.99",
"priceValidUntil": "2026-12-31",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock",
"seller": {
"@type": "Organization",
"name": "Your Store Name"
}
}
}
</script>Drop this complete block into the <head> section of any product page. Swap in your real values for name, image, SKU, price, ratingValue, and reviewCount.
Missing schema faqpageQuick win
Add FAQPage schema markup to any page that contains a Frequently Asked Questions section so Google can display your answers as rich results directly in search.
On BigCommerce for WP
- Use the WordPress block editor to open the page containing your FAQ content.
- Install 'Rank Math SEO' and add a Rank Math FAQ Block, or manually add an HTML block and paste the <script type='application/ld+json'> code directly.
- Save and publish the page, then validate with Google's Rich Results Test.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Frequently Asked Questions | Your Store</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is your return policy?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We accept returns within 30 days of purchase. Items must be unused and in their original packaging."
}
},
{
"@type": "Question",
"name": "How long does shipping take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Standard shipping takes 5–7 business days. Expedited options are available at checkout."
}
}
]
}
</script>
</head>
<body>
<h1>Frequently Asked Questions</h1>
<h2>What is your return policy?</h2>
<p>We accept returns within 30 days of purchase. Items must be unused and in their original packaging.</p>
<h2>How long does shipping take?</h2>
<p>Standard shipping takes 5–7 business days. Expedited options are available at checkout.</p>
</body>
</html>Full HTML page example showing exactly where to place the FAQPage script block inside the <head>.
Missing schema localbusinessQuick win
Add LocalBusiness JSON-LD structured data to your store so search engines and AI answer engines can surface your business name, address, phone number, and hours in rich results and direct answers.
On BigCommerce for WP
- Follow the WooCommerce/WordPress.org steps above since this plugin runs within WordPress.
- Use 'Insert Headers and Footers' (Settings → Insert Headers and Footers → Scripts in Header) to paste the JSON-LD block site-wide.
- Validate with Google's Rich Results Test.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Your Store</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Store",
"name": "Your Business Name",
"url": "https://www.yourdomain.com",
"logo": "https://www.yourdomain.com/logo.png",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main Street",
"addressLocality": "Springfield",
"addressRegion": "IL",
"postalCode": "62701",
"addressCountry": "US"
},
"telephone": "+1-217-555-0100",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "09:00",
"closes": "18:00"
}
]
}
</script>
</head>
<body>
<!-- page content -->
</body>
</html>Paste this block anywhere inside the <head> element of your HTML page. Replace all placeholder values before deploying.
Missing schema organizationQuick win
Add an Organization schema markup block to your store's homepage (and/or sitewide template) so search engines and AI assistants can definitively identify your brand.
On BigCommerce for WP
- Follow the WooCommerce instructions above — BigCommerce for WP uses the WordPress admin and Rank Math / Yoast SEO work the same way.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Acme Store",
"url": "https://www.acmestore.com",
"logo": {
"@type": "ImageObject",
"url": "https://www.acmestore.com/images/logo.png",
"width": 250,
"height": 250
},
"sameAs": [
"https://www.facebook.com/acmestore",
"https://www.instagram.com/acmestore",
"https://twitter.com/acmestore",
"https://www.linkedin.com/company/acmestore",
"https://www.youtube.com/c/acmestore"
],
"contactPoint": {
"@type": "ContactPoint",
"contactType": "customer service",
"email": "hello@acmestore.com"
}
}
</script>Drop this complete block inside your <head>…</head> section on every page. Replace all placeholder values.
Org missing sameasQuick win
Add a `sameAs` array to your Organization schema, linking to your verified social profiles, Wikipedia page, LinkedIn, and other authoritative sources so search engines can confidently identify your brand as a known entity.
On BigCommerce for WP
- Use the same approach as WooCommerce: install Yoast SEO or Rank Math, then add social profile URLs in the plugin's organization settings to populate `sameAs` automatically.
- Or paste the JSON-LD snippet via the 'Insert Headers and Footers' plugin targeting the <head> on all pages.
- Verify with Google's Rich Results Test.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Your Brand Name",
"url": "https://www.yourdomain.com",
"logo": "https://www.yourdomain.com/images/logo.png",
"sameAs": [
"https://www.linkedin.com/company/your-company",
"https://www.facebook.com/yourpage",
"https://twitter.com/yourhandle",
"https://www.instagram.com/yourhandle",
"https://www.youtube.com/@yourchannel",
"https://en.wikipedia.org/wiki/Your_Brand",
"https://www.wikidata.org/wiki/QXXXXXXX"
]
}
</script>Paste this directly before the closing </head> tag in your HTML template. Remove any sameAs entries for platforms your brand does not have a presence on.
Accessibility (WCAG) · 3 fixes
Image altModerate effort
Add descriptive alt text to every meaningful image, and mark purely decorative images with an empty alt attribute or role="presentation".
On BigCommerce for WP
- Product image alt text is managed in your BigCommerce admin (see BigCommerce steps above); changes sync to the WordPress storefront automatically via the BigCommerce for WordPress plugin.
- For theme/page-builder images added directly in WordPress: WP Admin → Media → Library → click image → fill 'Alternative Text' field.
<!-- Meaningful image: describe the content -->
<img src="red-leather-bag.jpg" alt="Red leather crossbody bag with gold clasp" width="600" height="400">
<!-- Image used as a link: describe the destination/action -->
<a href="/sale">
<img src="summer-sale-banner.jpg" alt="Shop our summer sale — up to 40% off">
</a>
<!-- Decorative image: empty alt, screen readers skip it -->
<img src="decorative-swoosh.svg" alt="" role="presentation">
<!-- WRONG — never omit alt entirely on an <img> -->
<!-- <img src="product.jpg"> -->
<!-- WRONG — never use filename or generic words -->
<!-- <img src="IMG_4821.jpg" alt="image"> -->Correct patterns for meaningful, linked, and decorative images.
Image redundant altQuick win
Remove or clear the alt text on images whose description is already provided by visible text immediately surrounding them, so screen readers don't read the same information twice.
On BigCommerce for WP
- Product images are managed from the BigCommerce admin (see BigCommerce steps above); alt text set there flows through to the WordPress front end.
- For images added directly in WordPress pages or posts, follow the WooCommerce/WordPress steps above.
<!-- CORRECT: image inside a link that also has visible text -->
<a href="/products/red-sneakers">
<img src="red-sneakers.jpg" alt="" width="300" height="300">
<span>Red Sneakers</span>
</a>
<!-- INCORRECT: alt repeats the visible link text -->
<a href="/products/red-sneakers">
<img src="red-sneakers.jpg" alt="Red Sneakers" width="300" height="300">
<span>Red Sneakers</span>
</a>
<!-- INCORRECT: alt attribute missing entirely (screen reader reads filename) -->
<a href="/products/red-sneakers">
<img src="red-sneakers.jpg" width="300" height="300">
<span>Red Sneakers</span>
</a>Use alt="" (empty string) when the image is inside or adjacent to visible text that already describes it. Never omit the alt attribute entirely.
Landmark banner is top levelModerate effort
Move your site's `<header>` element (or `role="banner"` landmark) so it is a direct child of `<body>`, not nested inside another landmark region.
On BigCommerce for WP
- This plugin embeds a BigCommerce storefront within a WordPress theme. The landmark structure depends on both the WordPress theme's `header.php` and the BigCommerce channel template.
- Follow the WooCommerce/WordPress steps above to ensure your WordPress theme's `header.php` outputs `<header>` as a direct child of `<body>`.
- Additionally, check that BigCommerce channel pages (product listing, product detail) loaded within WordPress are not wrapping the site header inside a `<main>` or other landmark injected by the plugin.
- Test with axe DevTools and report persistent issues to BigCommerce support if the nesting originates from the plugin's own wrapper markup.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Store</title>
</head>
<body>
<!-- CORRECT: <header> is a direct child of <body> -->
<header>
<a href="/"><img src="/logo.svg" alt="My Store home"></a>
<nav aria-label="Primary">
<ul>
<li><a href="/shop">Shop</a></li>
<li><a href="/about">About</a></li>
</ul>
</nav>
</header>
<main id="main-content">
<!-- page content here -->
</main>
<footer>
<!-- footer content here -->
</footer>
</body>
</html>Correct top-level structure: <header> is a direct child of <body>, not nested in any landmark.
Security (OWASP) · 4 fixes
Missing dmarcQuick win
Add a DMARC DNS TXT record at _dmarc.yourdomain.com to tell receiving mail servers how to handle emails that fail authentication checks for your domain.
On BigCommerce for WP
- DNS is managed at your domain registrar or DNS provider — not inside WordPress or BigCommerce.
- Add a TXT record at your DNS provider: Host = _dmarc, Value = v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com, TTL = 3600.
- Ensure transactional email sent via BigCommerce's SMTP is DKIM-signed (configure under BigCommerce Admin → Settings → Email), then publish the DMARC record.
_dmarc.yourdomain.com. 3600 IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com; ruf=mailto:dmarc-forensic@yourdomain.com; sp=none; adkim=r; aspf=r"Add this as a DNS TXT record at your domain registrar or DNS provider. Replace yourdomain.com and the rua address with your actual domain.
Missing referrer policyQuick win
Add a Referrer-Policy HTTP response header set to strict-origin-when-cross-origin to control what URL information browsers send when users navigate away from your store.
On BigCommerce for WP
- This plugin embeds BigCommerce products within a WordPress site, so the WordPress layer controls headers.
- Use a WordPress security headers plugin (e.g. Headers Security Advanced & HSTS WP) to set `Referrer-Policy: strict-origin-when-cross-origin`.
- Or add the header in `.htaccess` (Apache) / Nginx server block as described in the WooCommerce steps.
<meta name="referrer" content="strict-origin-when-cross-origin">Add inside the <head> element of every HTML page as a fallback when HTTP header control is unavailable.
Missing spfQuick win
Add a DNS TXT record containing a valid SPF policy to your domain so that email receivers can verify which servers are authorised to send mail on your behalf.
On BigCommerce for WP
- BigCommerce for WP is a headless/channel setup; email sending follows BigCommerce's infrastructure. Add 'include:_spf.bigcommerce.com' (verify current tag in BigCommerce docs) to your domain's TXT record at your DNS provider.
- WordPress-side emails (admin notifications, password resets) are sent via your host's PHP mail or an SMTP plugin — add that provider's include: tag as well.
- Add the TXT record at '@' in your registrar or DNS host dashboard and verify propagation.
v=spf1 include:_spf.google.com include:sendgrid.net include:spf.mailgun.org -allAdd this as a DNS TXT record at your domain apex ('@'). Replace the include: values with the exact hostnames from each of your email providers' SPF documentation. Only one SPF TXT record is allowed per domain — combine all providers into one record.
Ssl errorModerate effort
Replace or reissue your SSL/TLS certificate so it is valid for the exact domain name your store uses, eliminating the hostname mismatch error.
On BigCommerce for WP
- SSL is managed at the WordPress/hosting layer for the frontend and at BigCommerce for the cart/checkout backend.
- Follow the WooCommerce/WordPress steps to fix SSL on the WordPress frontend (hosting control panel → renew/reissue certificate).
- The BigCommerce-hosted checkout uses BigCommerce's automatically managed SSL — no action needed there unless the custom domain connected to BigCommerce has a DNS issue (see BigCommerce steps above).
Site Lifecycle · 3 fixes
Domain expiryQuick win
Log in to your domain registrar, confirm your domain's expiry date, and enable auto-renew so your store never goes offline due to an expired domain.
On BigCommerce for WP
- Domain is managed at your external registrar, not in WordPress or BigCommerce. Log in to your registrar and enable auto-renew.
<!-- No HTML change required. Domain renewal is managed at your domain registrar's dashboard (e.g. GoDaddy, Namecheap, Cloudflare Registrar). Log in, find the domain, enable auto-renew, and confirm a valid payment method is on file. -->No code change is needed on your website — this fix is completed entirely in your registrar's dashboard. There is no markup or configuration file involved.
Html langQuick win
Add a lang attribute to your site's <html> tag that matches the primary language of your store's content.
On BigCommerce for WP
- The <html> tag is rendered by your WordPress theme's header.php, not the BigCommerce for WordPress plugin.
- Follow the WooCommerce / WordPress.org steps above to ensure language_attributes() is in your theme's header.php and that Settings › General › Site Language is set correctly.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Your Store</title>
</head>
<body>
<!-- page content -->
</body>
</html>Place this as the very first tag in your HTML document, before <head>.
Lifecycle products missing from sitemapQuick win
Add all canonical product URLs to your XML sitemap so search engines discover and index every product page quickly.
On BigCommerce for WP
- The BigCommerce for WordPress plugin renders product pages on your WordPress site; the sitemap is controlled by your WordPress SEO plugin (Yoast or Rank Math).
- In Yoast SEO → Settings → Content types → BC Products, ensure 'Show in search results' is 'Yes' to include them in the sitemap.
- Visit yourdomain.com/wp-sitemap.xml or yourdomain.com/product-sitemap.xml to confirm BC product URLs appear.
- Submit in Google Search Console → Indexing → Sitemaps.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<!-- Example product page entry -->
<url>
<loc>https://www.example.com/products/blue-running-shoes</loc>
<lastmod>2024-06-01</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<!-- Repeat one <url> block per canonical product page -->
<url>
<loc>https://www.example.com/products/red-yoga-mat</loc>
<lastmod>2024-05-20</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
</urlset>Standard XML sitemap structure. Place this at yourdomain.com/sitemap.xml (or reference it from a sitemap index file).