
Liliway — a holistic wellness studio from NoMad, Manhattan
Холістична wellness-студія Liliani Gankevych у NoMad (Манхеттен) — фейшел і body-treatments, WooCommerce-каталог Biologique Recherche з gated-pricing, бронювання через GlossGenius.
Liliway is not a single product card with a “book now” button — it’s a parallel wellness ecosystem for an NYC client: a holistic studio run by Liliana Gankevych in NoMad, on the 9th floor of a building between Mama Mezze and IMPACT Kitchen, plus a WooCommerce store with 5 categories and ~40+ SKUs, where part of the catalogue is Biologique Recherche products with gated pricing (“Log in for price”), and the other part is public retail items with Afterpay instalments. The booking flow is carried out of WP into a third-party platform, GlossGenius (liliway.glossgenius.com), because WP+WC doesn’t fully cover appointment management for spa services. Stack: WordPress + WooCommerce, Yoast SEO, jQuery, Afterpay checkout, PayPal Smart Buttons with reCAPTCHA-v3 fraud protection, a Klaviyo-style newsletter.
Hero “Personalized Holistic Wellness” — a split photo focus instead of a product grid
The first screen is a full-bleed photo from a facial session with the tag “a natural approach to healing” above the H1 “Personalized Holistic Wellness”, serif typography in white over a warm, muted beige tone. Two CTAs at the bottom: “Book Appointment” (leads to GlossGenius) and “Shop Products” (to /shop/). Above the header — a thin dark promo bar, “Free shipping over $100. Use code ‘HOLISTIC’ at checkout.”, that stays visible on every page as a site-wide promo. The nav is split: 5 links on the left (Home / Treatments / Shop / Explore / Contact), a two-line serif logo LILIWAY HOLISTIC STUDIO in the centre, and on the right — Search / Account / Cart(0) / an outline CTA “Book Appointment”.
Services — a split on the homepage, a full structure on /services/
Instead of one services page, the homepage has a two-column split: Facial Treatments (“Customized down to the last detail to reveal a beautifully illuminated complexion”) and Body Treatments (“From Biodraineur and Wraps to Conturing Endermologie Treatments and more”). Each card has a photo preview from a real session, a heading, a description and an outline CTA “Explore Treatments” with an anchor link to the matching section, /services/#facials or /services/#body-treatments. Between the “Holistic skincare treatments” tag and the split cards there’s a long body copy: “By focusing on the body, mind, and spirit, our approach offers a renewed sense of confidence…” and a CTA, “Schedule My Session”.

#facials anchor within the same /services/ page with a smooth scroll to the section. One template, two entry points.The /services/ page — 6 services in 3 groups with transparent prices
The /services/ page has three anchored groups: Facial Treatments, Body Treatments, Consultations. Each group has a heading, body copy about “selecting the duration of your wellness session based on your goals”, and a CTA, “Schedule My Session”, to GlossGenius. Service cards have a photo on top and a description block below: Liliway Signature Facial Treatment $725 / 90 min (performed exclusively by founder Liliana Gankevych), Customized Holistic Facial $195 / 60 min or $250 / 75 min, LPG Endermologie Facial $165 / 35 min or $225 / 60 min, Liliway Signature Body $395 / 90 min (packages available), LPG Endermologie Body $275 / 40 min or $320 / 60 min (packages available), Virtual Consultation $175 / 50 min (secure video call with founder). Every card has an outline “learn more” button with an arrow.

Exclusive Products — a Biologique Recherche carousel with gated pricing
A separate homepage section, “Exclusive products”, with a filter link “Shop Biologique Recherche” (leading to /shop/?product-brand=biologique-recherche) and a horizontal slick carousel showing 4 items at a time: BIOKISS (Protective – Lipid-Replenishing – Repairing, 0.5 fl oz), MASQUE VISOLASTINE+ (Soothing – Hydrating – Moisturizing, 3.4 fl oz), MASQUE VIVANT (Soothing – Pore-Tightening – Regulating, 3.4 fl oz), MASQUE VIP O2 (Oxygenating – Detoxifying – Moisturizing, 3.4 fl oz). Instead of a price on each card there’s a link, “LOG IN FOR PRICE”, sitting in the same spot a price tag would normally occupy for a retail item.

/my-account/, while a registered client (status customer, granted after their first session) sees the real price with an Add to cart button. This isn’t a Magento plugin or a Shopify trick — it’s a careful WooCommerce configuration built on a conditional woocommerce_get_price_html filter and a custom template for the login prompt. The heart icon in the top corner is a wishlist that works both for unlogged visitors (stored in a cookie) and registered clients (synced to the account).WooCommerce catalogue — 5 categories, 40+ SKUs, a 3-filter panel
The /shop/ page carries the heading “Shop Holistic Products”, an intro paragraph — “Welcome to the Liliway shop — a carefully curated collection of holistic skincare, body care, and wellness essentials chosen with intention” — and three custom WC filters above the grid: Category: All, Brands: All, Product type: All. The catalogue is a 4-column grid with 12 products per page across 4 pages of pagination (so roughly 45 SKUs). Footer categories: Skin Care, Body Care, Hair Care, Lifestyle, Gift Cards. Each product card: a heart wishlist icon on top, a large square-fit photo, a title (CREME / MASQUE / SERUM formula), a descriptor line (Mattifying – Rebalancing – Sebo-Regulating), a size (0.3 fl oz | 1.0 fl oz), and either a price (for example $245.00 for After Dark – Restorative Night Serum, $238 for Éclat Extraordinaire) — or “Log in for price”.

?product-brand=biologique-recherche), giving deep-linking into a specific brand page without an overloaded sidebar.Product page — a multi-thumb gallery, Afterpay and accordion descriptions
The /product/eclat-extraordinaire/ page is a two-column layout: on the left a vertical 4-thumb gallery with a large product image (La Fervance Éclat Extraordinaire, 50 mL jar), on the right — an H1 “Éclat Extraordinaire”, the price $238.00, below it — “or 4 interest-free payments of $59.5 with Afterpay” with an Afterpay badge, further down — a 5-star rating with a review count (0), a volume “50 mL |”, two description paragraphs, a quantity counter with minus/plus and a numeric field, a dark-red CTA “ADD TO CART” and an outline CTA “ADD TO WISHLIST”. Below the CTAs — an accordion with two sections: Description and Ingredients (both collapsed by default). Further down the page — Ratings & Reviews with a “write a review” button, and a “You may also like” block with a 4-column related-items carousel.

Booking flow — GlossGenius kept separate from WooCommerce
Every CTA button — “Book Appointment” / “Schedule My Session” / “book an appointment” — leads to liliway.glossgenius.com, a third-party scheduling platform where the client picks a service, date, time and pre-visit details. The WooCommerce checkout is used only for retail orders from the product catalogue. This split is deliberate: WC Bookings (the official WC plugin for appointments) has weak UX for wellness services — it can’t block a buffer period between sessions, doesn’t support two-tier pricing for the same service at different durations (60 vs 75 min), and doesn’t tie sessions to staff availability. GlossGenius is the industry standard in the NYC spa/wellness segment: it runs a PCI-compliant payment flow, sends SMS reminders 24 hours ahead, and syncs with the founder’s Google Calendar. The split never confuses the client, because “Book” looks visually different from the “Shop” flow.
Visit Our Holistic Studio — a location callout as a trust signal
A pre-footer section, “Visit Our Holistic Studio” — a photo of the studio interior with dried flowers and a boucle chair, full-bleed background, a centred white serif heading and body copy: “As a holistic care studio, we create customized spa treatment plans for each client that supports wellness on every level – body, mind, and spirit – revealing a beautifully illuminated complexion”. The CTA is an outline button, “Schedule My Session”. This isn’t a repeat of the services CTA — it’s a sensory hand-off: before reaching the button, the client already sees that the interior isn’t a clinical room but a deliberately curated space (dried flowers, warm wood floors, soft lit tones).

Social proof — 12 customer reviews plus an Instagram grid @liliwaystudio
The reviews slider has 12 cards (looping): Tianna Wong (“Best facial experience I have had in NY”), Meg H. (“the space feels incredibly calming”), Kelly Wiet (“I always feel incredibly comfortable”), Ruby Simmons (“I trust with my skin more than Liliway”), Ali Driesman (“one of a kind and truly the best of the best”), Lulu (“INCROYABLE!”). Each card is a quote body copy ending in an ellipsis with a name signed beneath it. On /services/ there’s a fuller slider with 6 extended reviews and headlines (““My skin has never looked better.” — MARY KATE CARRAGHER”, ““I won’t let anyone else touch my face.” — Kaitlin Kuhn”, ““Felt like I was in a Paris” — ANN PETERS”). The last block before the footer is an Instagram grid, “Follow us on instagram @liliwaystudio”, with 12 visible posts (a mix of photo / carousel / video), each a clickable tile that opens an IG deep link.

Stack and technical decisions
WordPress core with a custom theme (no public theme indicator), Yoast SEO for meta+sitemap, jQuery+jQuery Migrate 3.4 for legacy virtual dependencies, WooCommerce with a modified checkout template (the Afterpay button is natively embedded into the product page and the checkout step). Payments run through PayPal Smart Buttons with PayPal Fraud Protection (reCAPTCHA v3 invisible token pre-generation on product load, submitted along with the cart). Lazy loading on gallery thumbnails, slick carousels for exclusive products / customer favourites / testimonials / the IG grid, fancybox for the product gallery overlay. Newsletter signup follows the Klaviyo format (a 3-field signup with no double-opt-in confirmation modal client-side); the signup button simply renders an inline success message with no redirect. GlossGenius runs on its own subdomain (liliway.glossgenius.com), not an embedded iframe — deliberately, to keep the full booking flow free of CSP/X-Frame-Options constraints.
What we built
We split two catalogue logics (gated Biologique Recherche + public retail) inside a single /shop/ grid via role-based price visibility and custom select filters — without adding WooCommerce Subscriptions or Memberships plugins, which would have complicated the schema and made database dumps heavier. We integrated the Afterpay widget on the product/cart/checkout pages without CSS conflicts with the custom theme (Afterpay tends to override the font stack at checkout, which we cleaned up with a scoped reset). We kept the WC checkout separate from appointment booking — GlossGenius as an external scheduler with no iframe embed, preserving WP page speed and avoiding a 200 KB scheduler script on every page load. A 5-category footer navigation with 3 anchor links into /services/# for a seamless one-page experience. Yoast SEO meta for head schema, JSON-LD Product schema on product pages and LocalBusiness schema on /contact-us/ for the NoMad location.