# 02 INFORMATION ARCHITECTURE

## 1. Sitemap

```
/                                   Homepage
/bed-sheets/                        Category
  /bed-sheets/cotton/
  /bed-sheets/sotten/
  /bed-sheets/fleece/
  /bed-sheets/fancy-bridal/
  /bed-sheets/plain/
  /bed-sheets/fitted/
  /bed-sheets/waterproof/
/blankets/
  /blankets/fleece-blankets/
  /blankets/blankets/
/bedding-sets/
  /bedding-sets/bedsheet-sets/
  /bedding-sets/razai-sets/
/pillows/
/shop/                              All products, the WooCommerce shop page
/shop/{product-slug}/               Product detail
/cart/
/checkout/
/checkout/order-received/{id}/      Thank you
/track-order/                       Order lookup by order number plus phone
/my-account/                        WooCommerce's page, kept only so its URLs resolve. Not linked from the header, not designed, not tested as a feature. Customer accounts are deferred, see D-21.
/size-guide/
/delivery-and-payment/
/returns-and-exchange/
/about/
/contact/
/privacy-policy/
/terms/
/search/?s=                         Search results
```

`/track-order/` replaces a customer account for most people. It takes an order number plus the phone number on the order and shows status, courier and tracking. This is decision D-21: it does the job an account would do, without a password.

## 2. Category taxonomy

Exactly the brief's structure, four parents, no extra depth. Do not invent categories.

| Parent | Children |
|---|---|
| Bed Sheets | Cotton, Sotten, Fleece, Fancy / Bridal, Plain, Fitted, Waterproof |
| Blankets | Fleece Blankets, Blankets |
| Bedding Sets | Bedsheet Sets, Razai Sets |
| Pillows | none |

A product sits in one child category and inherits the parent. Do not cross-file a product into multiple parents, it makes breadcrumbs ambiguous.

## 3. Attributes

Global WooCommerce attributes, `pa_` prefixed, used for filtering:

| Attribute | Used for variations | Example terms |
|---|---|---|
| `pa_size` | yes | Single, Double, Queen, King |
| `pa_color` | yes | White, Ivory, Beige, Blue, Pink, Grey, Maroon, Green |
| `pa_fabric` | no | Cotton, Sotten, Fleece, Poly Cotton, Microfibre |
| `pa_pattern` | no | Floral, Plain, Geometric, Printed, Embroidered |
| `pa_season` | no | Summer, Winter, All Season |
| `pa_thickness` | no | Light, Medium, Heavy |
| `pa_set-type` | no | Bedsheet Set, Razai Set, Single Sheet |

Only `pa_size` and `pa_color` drive variations. Everything else is a filterable descriptor on the parent product.

Descriptive fields stay as product meta, never as taxonomy (decision D-10): dimensions, pieces, includes, care instructions, thread count.

## 4. Product data template

Every product carries the same structured block, editable in a single metabox, rendered as a spec table:

| Field | Type | Example |
|---|---|---|
| Fabric | attribute `pa_fabric` | Cotton |
| Size | attribute `pa_size` | King |
| Dimensions | meta `_bc_spec_dimensions` | 240 x 260 cm |
| Pieces | meta `_bc_spec_pieces` | 3 |
| Includes | meta `_bc_spec_includes` | 1 bedsheet, 2 pillow covers |
| Pattern | attribute `pa_pattern` | Floral |
| Season | attribute `pa_season` | Summer |
| Care | meta `_bc_spec_care` | Machine washable, do not bleach |
| Thread count | meta `_bc_spec_thread_count` | 180 TC |
| Thickness | attribute `pa_thickness` | Medium |

Sections with no value hide themselves. Never render an empty heading.

## 5. Navigation

**Desktop header**: a slim top bar carrying the phone number and WhatsApp link (a trust signal, per UX spec section 7), then the main row: logo, Shop, Bed Sheets, Blankets, Bedding Sets, Pillows, search icon, Track Order link, cart with count. **No account icon**, accounts are deferred. Category items get a simple one-level dropdown of their children. No mega menu in MVP.

**Mobile header**: hamburger, logo, search icon, cart with count. The drawer lists the four parents, each expanding to its children, plus Track Order, Size Guide, Contact and the WhatsApp number.

**Footer**: four columns on desktop, stacked on mobile. Shop by category, Help (Delivery and Payment, Returns and Exchange, Size Guide, Track Order, Contact), About (About, Privacy, Terms), and Contact with a real phone number, WhatsApp link and a physical address. The address is a trust signal and it must be real.

**Breadcrumbs** on every category and product page, with `BreadcrumbList` schema.

## 6. URL rules

Locked in decision D-12.

- Category base stripped: `/bed-sheets/cotton/`
- Product base is `/shop/`: `/shop/cotton-double-bedsheet-floral/`
- No category path inside product URLs
- Lowercase, hyphenated, no stop words, no dates
- Product slug pattern: `{fabric}-{size}-{type}-{distinguishing-feature}`, for example `cotton-king-bedsheet-set-blue-floral`

Filter and sort parameters (`?filter_fabric=`, `?orderby=`, `?min_price=`) are `noindex, follow` and canonical to the clean category. They are **not** disallowed in `robots.txt`: a disallowed URL is never fetched, so the crawler would never see the noindex. See decision D-25.

Before cutover, crawl every URL on staging. A stripped category base is the most common source of silent 404s in WooCommerce.

## 7. Customer journey by entry point

**Meta ad to product page**: this is the highest-volume path and the product page must stand alone. It needs the breadcrumb, the COD badge, the delivery estimate, the size guide link and the return policy summary visible without leaving the page.

**Google search to category page**: needs an intro block above the grid for context and a longer block below it for SEO body copy, plus sibling category links.

**Homepage to category to product**: the Shop by size chip row is the fastest route for a buyer who already knows their bed size, which is most of them.

**Direct to Track Order**: a returning customer checking on a placed order. Two fields, no login.

## 8. Internal linking

- Every product breadcrumbs back to its parent category.
- Related products are drawn from the same child category, then the same `pa_fabric`.
- Category pages carry 120 to 200 words above the grid and around 300 words below it.
- Sibling categories link to each other: Cotton links to Sotten, Fleece and Plain.
- The size guide is linked from every variable product's size selector.
