E-commerce · Medical and beauty equipment
Ara Sanat: a medical-equipment shop on WordPress, with a bespoke theme and 18 custom plugins
A specialist medical and beauty equipment shop on WordPress and WooCommerce with a bespoke theme and 18 custom plugins: category landings without a page builder, technical SEO, local payment and SMS, and tracked consultation and instalment forms.
- Client
- Ara Sanat
- Industry
- Medical and beauty equipment
- Year
- 2025
- Status
- Live
- Discovery and analysis
- UX and UI design
- Software architecture
- Front-end development
- Back-end and API development
- Database design
- Third-party integrations
- Technical SEO
- QA and testing
- Support and ongoing development
The result, in numbers
- 18
- custom plugins
- 0
- page-builder dependency
instead of piling everything into the theme
category landings are built without Elementor
The challenge
Selling medical and beauty equipment is not like selling ordinary goods. Customers want advice before they buy, part of the trade is on instalments, and a category page has to sell products and work as an SEO landing page at the same time — rich content, frequently asked questions and guidance, not just a grid of items.
With off-the-shelf tooling this usually ends in two problems. First the page builder: the category landing is assembled in Elementor, the page gets heavy, and every structural change depends on one person. Second plugin sprawl: one for SEO, one for the gateway, one for SMS, one for Persian localisation — and every update is a fresh risk.
The solution
WordPress and WooCommerce were kept as the platform — authentication, products, orders and payment come from them — and everything specific to Ara Sanat was written from scratch: a hand-written theme (version 3.2.6) with full right-to-left support, the locally hosted IRANSansX typeface and semantic HTML, plus 18 independent plugins.
The important decision was not to pile capabilities into the theme. Each service is its own plugin, so it can be updated, switched off or debugged on its own, and changing the theme later does not take the site down with it.
SEO in the project, not in a generic plugin. The bespoke SEO plugin provides meta titles and descriptions, canonicals, robots, Open Graph, structured data, FAQ blocks, breadcrumbs, a sitemap and redirects — exactly what a landing page needs.
Category landings without a page builder. A dedicated plugin builds a proper page for any WooCommerce category: a mix of products, rich content, FAQs and a route to advice — no Elementor and no extra weight.
Local payment and SMS. A ZarinPal gateway with HPOS and Checkout Blocks support, card-to-card and IBAN transfer with receipt upload and admin review, and SMS.ir with a send queue for order notifications and one-time codes.
Forms that are actually tracked. Consultation, contact, instalment purchase, complaints and recruitment each have their own plugin, with a tracking code and administration in the dashboard — not an email form that disappears into an inbox. Form security uses capability checks, nonces, input validation, a honeypot and safe handling of uploaded files.
Performance. Conditional asset loading, a local font, responsive images, deferred scripts, and page caching with WooCommerce exclusions so the cart and checkout are never cached.
Key features
A fully dynamic home page
Product hero, seasonal banners, category and hand-picked showcases, featured products, advice and the magazine — all from the dashboard.
Category landings without a page builder
Products, rich content, FAQs and a route to advice in one SEO landing page.
A proper product page
Gallery, specifications, price and discount, colour options, buying guidance, warranty and a call to advice.
Advanced header and navigation
A mega menu, sticky header, product search, a mobile panel and a fixed mobile action bar.
Technical SEO inside the project
Meta, canonicals, robots, Open Graph, JSON-LD, FAQs, breadcrumbs, sitemap and redirects.
Local payment
ZarinPal with HPOS and Checkout Blocks support, plus card-to-card and IBAN transfer with receipt upload and admin approval.
Tracked enquiry forms
Consultation, contact, instalments, complaints and recruitment — each with a tracking code and dashboard administration.
Queued SMS and OTP
A secure SMS.ir connection with a send queue, order notifications and one-time codes.
Architecture and stack
- Style
- CMS-based
WordPress here is the platform, not a theme: products, orders, users and payment come from WooCommerce, and nothing WordPress already does was rebuilt.
On top of it, the project's logic is split across 18 independent plugins rather than one fat theme. Each has a single responsibility — shared infrastructure, the hero slider, SEO, category landings, the product page, product colours, per-page CSS, caching, Persian localisation, WooCommerce localisation, the ZarinPal gateway, bank transfer, SMS, consultation, enquiries and instalments, complaints, recruitment, and the dashboard interface — and that separation is what makes maintenance, updates and debugging possible.
Form security is taken seriously, because every form is public: capability checks, nonces, input validation, a honeypot and safe handling of uploaded files (CVs and payment receipts).
Performance comes from conditional asset loading, a local font, responsive images and deferred scripts, and the page cache is deliberately conservative: cart, checkout and account pages are never cached, because caching them produces the worst class of shop bug.
HPOS and Checkout Blocks compatibility was respected from the start, so future WooCommerce updates will not break the gateway or the checkout.
- Back end and API
- WordPressWooCommercePHPREST API
A bespoke 3.2.6 theme and 18 custom plugins, HPOS and Checkout Blocks compatible
- Database
- MySQL
- Front end
- HTML5CSS3JavaScript (ES6+)Responsive Design
RTL, the IRANSansX font served locally, no page builder
- Infrastructure and deployment
- Docker
- Other
- UI/UX DesignPerformance Optimization
JSON-LD structured data, conservative caching
Integrations
- ZarinPal payment gateway
- Card-to-card and IBAN transfer with receipt upload and admin approval
- SMS.ir messaging with a send queue
Related services and products
Have a similar project in mind?
Fifteen minutes is enough to say what it needs, how long it takes and where to start.
Similar projects
E-commerce
Daroobin: an online pharmacy with batch tracking, expiry dates and FEFO allocation
An online pharmacy and cosmetics shop on .NET 10: multi-batch inventory with lot numbers and expiry dates, FEFO allocation, three payment gateways, scheduled campaigns and flash sales, and margin reporting.
- Next.js
- React.js
- TypeScript
- Tailwind CSS
Daroobin · 2025
E-commerce
Zarshop: a bespoke hygiene-products shop with layered stock control and Jalali reporting
A bespoke online shop on ASP.NET Core and Next.js: a thirty-minute stock reservation, weight- and zone-based shipping across five carriers, Jalali-month sales reporting with PDF export, and the migration of more than five thousand historical orders.
- Next.js
- React.js
- TypeScript
- Tailwind CSS
Zarshop, Babol · 2025
Custom software · E-commerce
Robocode: academy, online exams, shop and a partner network on one platform
The integrated platform for the Robocode academy on .NET 10: online and in-person courses, exams with report cards, a shop with wholesale pricing, certificate issuance with QR verification, a partner and instructor panel with commission, and single sign-on from Shad.
- .NET 10
- C#
- Entity Framework Core
- MediatR
Robocode training institute · 2025

