Skip to content

JBS LEMO Shopify Storefront

Online store for JBS as the official Australian LEMO distributor, built on Shopify's Dawn 15.4.1 theme.

Account

  • Dev store: lemo-test.myshopify.com
  • Theme: JBS/LEMO Customs (ID: 197576818769)
  • CLI binary: ~/.npm-global/bin/shopify
  • Local theme root: ~/Downloads/work/dawn-theme/

Theme Customisation

  • Color scheme: Light LEMO brand since 2026-06-24 — all 5 schemes use #f4f6f9 bg, #0d2240 text, #0057a8 buttons (reverted from dark). Dark backup at config/settings_data.json.n
  • Custom CSS: Card hover effects, navy footer, LEMO CSS variables in layout/theme.liquid
  • Homepage sections: Hero banner ("Official LEMO Agent"), rich text ("Trusted for over 60 years"), collage, video, multicolumn ("Why LEMO"), Series cards (B, S, T)
  • Header: Sticky with announcement bar — "Official Australian LEMO Distributor | Unit 2, 8-12 Mars Rd, Lane Cove West NSW"
  • Footer: JBS contact details, navy background (--lemo-navy: #0d2240)
  • Card styling: 8px border-radius, 1px border, light shadow on hover
  • Collection page: Vertical sidebar filtering enabled
  • Top level: Series (B, K, M, S, T, F, V, etc.)
  • Filters per series: Connector type, pin count, shell size, IP rating
  • ~6000 products total, all using the same product template

Tag Convention

Prefix-based tags for Shopify filter groups:

Prefix Example Values
type_ cable-plug, cable-socket, blanking-cap
pin_ 2, 3, 4, 7
shell_ 0, 1, 2
ip_ 50, 66

Import Tool

The Shopify Import Tool (V10) is a self-contained HTML page at: ~/Downloads/work/Shopify_import_tool_V10.html

Key features: - Loads CSV with columns: Code, SKU, Title, Description, Features, Specs, Tags, Category - Structured tag fields (type_, pin_, shell_, style_, variant_) instead of flat text - Auto-parses old flat tags into prefix convention on CSV load - WYSIWYG editors (Quill.js) for Description and Specs - LEMO-themed spec table preview - Bulk-apply tag field across all products - Exports Shopify-compatible CSV with UTF-8 BOM

Evolution

Version Key Change
V8 Quill.js WYSIWYG editors, spec table preview, CSV export fixes
V9 (intermediate)
V10 Structured tag fields, auto-parse, bulk apply, color-coded preview

Series Pages

Series Handle Template Status
S Series /pages/s-series page.lemo-s-series.liquid Done — 6 spec cards (Proven Design, Alignment, Signal Integrity, Configuration, Environment, Applications) + Why Choose
B Series admin Uses template Created in admin
T Series admin Uses template Created in admin

Page Templates with Section Content

Templates can include sections (like multicolumn) below the main page area. These are created in the Theme Editor (Customize → Save as template).

Editing Workflow

  • Page editor (Pages → edit page) — only the title + body HTML is editable
  • Theme Editor (Customize mode with the page selected) — template sections (multicolumn, etc.) are editable here
  • Per-page sections are not possible — section content in templates is shared across all pages using that template. To have different content per page, create separate templates (e.g., page.optima.json, page.supreme.json)

Template Naming

  • Template filenames use page.{name}.json format
  • The display name in admin is auto-derived from the filename (e.g., page.optima.json → "Optima-page")
  • Cannot be renamed from admin UI after creation — must rename the file locally and push
  • Pages must be reassigned to the new template name after renaming

Template Created

Created page.optima.json (originally page.category-page.json): - main section — page body content - multicolumn section — 3 column cards with Series images and links (M Series, D Series, F Series)

CLI Commands

# Pull remote changes down
shopify theme pull --store=lemo-test.myshopify.com -t "JBS/LEMO Customs" --force

# Push local changes to live
shopify theme push --store=lemo-test.myshopify.com -t "JBS/LEMO Customs" --force --allow-live

Product Page

  • No separate Specs tab — specs are merged into Body HTML via the import tool
  • Uses Dawn's built-in related-products section (pulls from same collection)
  • SEO titles/descriptions automated via import tool

Product Specifications Section

Created custom section sections/product-specs.liquid for the product.lemo-product.json template.

Purpose

Spec tables from the import tool rendered in Dawn's narrow right column and got squashed. The spec HTML also referenced CSS variables (--lemo-bg, --lemo-navy) only defined in the import tool, not on the live theme.

How it works

Reads the current product's tags with known prefixes and displays them as a formatted table full-width below the product info:

Prefix Label
type_ Connector Type
pin_ Pin Count
shell_ Shell Size
ip_ IP Rating
voltage_ Test Voltage
current_ Rated Current
temp_ Operating Temperature
style_ Style

Values display with original case preserved — hyphens/underscores become spaces.

Template Changes (product.lemo-product.json)

  • description block restored in main-product section (right column, after buy_buttons)
  • Static collapsible-content section removed (had placeholder rows)
  • Section order: mainproduct_specsrelated-products

lemo2 Template

Created product.lemo2.json via theme editor: - main-product with description block in right column, media_size: "large" - multicolumn section (Free Shipping, Hassle-Free Exchanges) - related-products section

To add new spec types

  1. Add a new tag prefix to the spec_map in sections/product-specs.liquid
  2. Tag products with the new prefix (e.g., material_brass)
  3. Optional: update the Shopify import tool V10 to auto-generate the new tags from CSV data

Cart & Shipping

  • Standard Dawn cart — no customisation
  • Weight-based shipping configured in Shopify admin

Pricing & BOM App

The LEMO Pricing & BOM App (v1.5.3) is at: ~/Downloads/work/ (HTML, self-contained)

Features: - Connector lookup with real-time search (80ms debounce) - Pricing settings: FX rate, freight %, dual-discount sell price formula - Quick Price Calculator: enter CHF buy price → see AUD sell, disc 100–999, disc 1000+ - BOM cost comparison: connector vs individual parts - Buy prices in red, sell prices in green - CSV import/export with BOM overlay

Sync Workflow

# Pull from Shopify (after browser edits)
shopify theme pull --store=lemo-test.myshopify.com -t "JBS/LEMO Customs" --force

# Push to live
shopify theme push --store=lemo-test.myshopify.com -t "JBS/LEMO Customs" --force --allow-live

Migration Notes

When transferring to the company Shopify account: - Transfers: Theme (.zip), Products (CSV export), Page templates - Must redo: Navigation menus, shipping/payment/tax settings, collections, Search & Discovery filter groups, page body content, store domain

Product Template Assignment on Import

The standard product CSV export does not include a Template column. To assign product.lemo-product.json to all products on the new store:

Option 1 (recommended): Add a Template column to the CSV before import — set every row to lemo-product. Shopify will apply it automatically.

Option 2: Import products first, then bulk-select all → More actions → Change template → lemo-product.

Key URLs

  • Store: https://lemo-test.myshopify.com
  • Admin: https://admin.shopify.com/store/lemo-test
  • Theme editor: https://admin.shopify.com/store/lemo-test/themes/197576818769/editor
  • Products import: https://admin.shopify.com/store/lemo-test/products/import
  • Files: https://admin.shopify.com/store/lemo-test/settings/files
  • [[Index]]
  • [[Stock Lookup Tool]]