Use this skill when modifying the "Buy Online, Pick Up In Store" (BOPIS) feature, including the pickup button text, modal design, or store search logic. Triggered by keywords: BOPIS, pickup today, store finder, local pickup.
This skill provides comprehensive guidance for modifying the "Buy Online, Pick Up In Store" (BOPIS) experience in this theme. The BOPIS feature is a custom integration (prefixed with hc-) that uses HotWax Commerce logic.
| Component | Responsibility | File Path |
|---|---|---|
| Container | Placeholder for the button on PDP | blocks/buy-buttons.liquid |
| Logic/Injection | Dynamic button creation & modal handling |
assets/bopis.js| Styling | Layout and visual appearance | assets/bopis.css |
The button text is hardcoded in the JavaScript injection.
assets/bopis.jsPick Up TodayThe "Pick Up Today" button uses the hc-open-bopis-modal class.
assets/bopis.css.hc-open-bopis-modal--color-button and --font-button-size.The modal HTML is stored in a string variable inside assets/bopis.js.
$pickUpModalhandleAddToCartEvent to process them.The store cards (shown after searching) are generated in the displayStoreInformation function.
assets/bopis.js -> displayStoreInformation function.#hc-store-cardWhen asking an agent to modify BOPIS:
<div class="hc-bopis-button"></div>.<input class="hc_product_sku">.bopis.js or bopis.css, ensure you are viewing the site on a fresh session or bypass cache.existingBopisButton.length == 0 before injecting. If you change the selector names, you might end up with duplicate buttons.