b33eee8bea
- Add icon.png as default favicon (cropped to remove transparent padding) - Fix layout.tsx to use icon.png as fallback when favicon_url is not set in DB - Move ADMIN_GUIDE.md to docs/ folder - Add docs/CUSTOMIZATION.md with guide on how to customize icon, title, footer
635 lines
18 KiB
Markdown
635 lines
18 KiB
Markdown
# Guida Utente — Pannello Admin
|
||
|
||
Guida completa all'uso del pannello di amministrazione dell'ecommerce platform.
|
||
|
||
---
|
||
|
||
## Indice
|
||
|
||
1. [Accesso e primo login](#1-accesso-e-primo-login)
|
||
2. [Dashboard](#2-dashboard)
|
||
3. [Prodotti](#3-prodotti) ← **sezione principale**
|
||
4. [Tipi di Prodotto](#4-tipi-di-prodotto-product-types)
|
||
5. [Categorie](#5-categorie)
|
||
6. [Ordini](#6-ordini)
|
||
7. [Clienti](#7-clienti)
|
||
8. [Recensioni](#8-recensioni)
|
||
9. [Utenti Admin](#9-utenti-admin)
|
||
10. [Impostazioni](#10-impostazioni)
|
||
11. [Flusso consigliato per iniziare](#11-flusso-consigliato-per-iniziare)
|
||
|
||
---
|
||
|
||
## 1. Accesso e Primo Login
|
||
|
||
### Avviare il server
|
||
|
||
```bash
|
||
docker compose up -d
|
||
```
|
||
|
||
Al primo avvio attendere 5-10 minuti. Per monitorare:
|
||
|
||
```bash
|
||
docker compose logs -f app
|
||
```
|
||
|
||
### Accedere al pannello
|
||
|
||
- **URL:** http://localhost/admin
|
||
- **Email:** `admin@example.com`
|
||
- **Password:** `Admin1234!test`
|
||
|
||
### Cambio password al primo accesso
|
||
|
||
Al primo login il sistema reindirizza automaticamente alla pagina **Change Password**. La nuova password deve rispettare tutti i requisiti:
|
||
|
||
| Requisito | Dettaglio |
|
||
|-----------|-----------|
|
||
| Lunghezza minima | 12 caratteri |
|
||
| Lettere maiuscole | almeno 1 |
|
||
| Lettere minuscole | almeno 1 |
|
||
| Numeri | almeno 1 |
|
||
| Simboli | almeno 1 (`!@#$%` ecc.) |
|
||
|
||
Dopo il cambio password si accede direttamente alla Dashboard.
|
||
|
||
---
|
||
|
||
## 2. Dashboard
|
||
|
||
**URL:** http://localhost/admin
|
||
|
||
La dashboard è la schermata iniziale e offre una panoramica rapida dello stato del negozio.
|
||
|
||
### Metriche principali
|
||
|
||
Sei card in evidenza mostrano i dati in tempo reale:
|
||
|
||
| Metrica | Descrizione |
|
||
|---------|-------------|
|
||
| **Total Orders** | Numero totale di ordini ricevuti |
|
||
| **Pending Orders** | Ordini in attesa di elaborazione (status: PENDING) |
|
||
| **Revenue** | Fatturato totale da ordini pagati |
|
||
| **Products** | Numero di prodotti nel catalogo |
|
||
| **Customers** | Numero di clienti registrati |
|
||
| **Pending Reviews** | Recensioni in attesa di moderazione |
|
||
|
||
### Ordini recenti
|
||
|
||
Sotto le metriche compare una tabella con i **5 ordini più recenti**, che mostra:
|
||
- ID ordine
|
||
- Cliente
|
||
- Importo
|
||
- Stato corrente
|
||
|
||
Cliccando su un ordine si apre il dettaglio.
|
||
|
||
### Link rapidi
|
||
|
||
Pulsanti di navigazione veloce alle sezioni più usate (Prodotti, Ordini, Categorie).
|
||
|
||
---
|
||
|
||
## 3. Prodotti
|
||
|
||
Questa è la sezione più importante del pannello. Permette di gestire l'intero catalogo.
|
||
|
||
**URL lista:** http://localhost/admin/products
|
||
|
||
### 3a. Lista Prodotti
|
||
|
||
La pagina mostra tutti i prodotti con:
|
||
- **Titolo** del prodotto
|
||
- **Stato** (DRAFT / PUBLISHED / ARCHIVED)
|
||
- **Prezzo** base
|
||
- **Stock** disponibile
|
||
- **Pulsanti azione**: Modifica, Archivia
|
||
|
||
#### Ricerca e filtri
|
||
|
||
- **Barra di ricerca:** filtra per titolo in tempo reale
|
||
- **Filtro stato:** dropdown per mostrare solo DRAFT, PUBLISHED o ARCHIVED
|
||
|
||
#### Creare un nuovo prodotto
|
||
|
||
Clicca il pulsante **"New Product"** (in alto a destra) per aprire il form di creazione.
|
||
|
||
---
|
||
|
||
### 3b. Creazione Nuovo Prodotto (GUIDA DETTAGLIATA)
|
||
|
||
**URL:** http://localhost/admin/products/new
|
||
|
||
> **Importante:** prima di creare prodotti, assicurati di aver creato almeno un **Product Type** e almeno una **Categoria**. Vedi le sezioni 4 e 5.
|
||
|
||
Il form è diviso in 4 sezioni.
|
||
|
||
---
|
||
|
||
#### Sezione 1 — Basic Information
|
||
|
||
**Product Type** *(obbligatorio)*
|
||
- Campo: `select` (menu a tendina)
|
||
- Seleziona il tipo di prodotto (es. "Abbigliamento", "Elettronica", "Libri")
|
||
- Il tipo determina quali attributi custom saranno disponibili nella sezione 4
|
||
- **Se non hai ancora creato tipi**, vai prima su http://localhost/admin/product-types
|
||
|
||
---
|
||
|
||
**Title** *(obbligatorio)*
|
||
- Campo: `text`
|
||
- Limite: massimo 200 caratteri
|
||
- Esempio: `"Sneaker Running Pro Modello X"`
|
||
- Usa un titolo descrittivo e chiaro per i clienti
|
||
|
||
---
|
||
|
||
**Slug** *(obbligatorio)*
|
||
- Campo: `text`
|
||
- Generato automaticamente dal titolo (es. `sneaker-running-pro-modello-x`)
|
||
- Formato: solo lettere minuscole, numeri e trattini (`-`), no spazi
|
||
- Viene usato nell'URL del prodotto nel negozio: `/products/sneaker-running-pro-modello-x`
|
||
- Puoi modificarlo manualmente, ma deve essere **unico** tra tutti i prodotti
|
||
- **Non cambiarlo dopo la pubblicazione** per evitare link rotti
|
||
|
||
---
|
||
|
||
**Description** *(obbligatorio)*
|
||
- Campo: `textarea`
|
||
- Inserisci una descrizione completa del prodotto
|
||
- Suggerimenti per una buona descrizione:
|
||
- Materiali e composizione
|
||
- Caratteristiche principali
|
||
- Istruzioni d'uso o cura
|
||
- Taglie disponibili (se non gestite tramite varianti)
|
||
|
||
---
|
||
|
||
#### Sezione 2 — Pricing & Inventory
|
||
|
||
**Base Price** *(obbligatorio)*
|
||
- Campo: `number` (valore in centesimi)
|
||
- **Attenzione:** il prezzo va inserito in centesimi, non in euro/dollari
|
||
- Esempi:
|
||
- `1999` → €19,99
|
||
- `4990` → €49,90
|
||
- `10000` → €100,00
|
||
- Valore minimo: `0`
|
||
|
||
---
|
||
|
||
**Currency** *(obbligatorio)*
|
||
- Campo: `select`
|
||
- Opzioni disponibili:
|
||
- `EUR` — Euro (€)
|
||
- `USD` — Dollaro americano ($)
|
||
- `GBP` — Sterlina britannica (£)
|
||
- Di default usa la valuta configurata nelle Impostazioni generali
|
||
|
||
---
|
||
|
||
**Stock** *(opzionale)*
|
||
- Campo: `number`
|
||
- Indica le unità disponibili in magazzino
|
||
- **Lasciare vuoto** = stock illimitato (il prodotto non esaurisce mai)
|
||
- Inserire `0` = prodotto esaurito (non acquistabile)
|
||
- Inserire un numero positivo (es. `50`) = scorte limitate
|
||
|
||
---
|
||
|
||
#### Sezione 3 — Status & Organization
|
||
|
||
**Status** *(obbligatorio)*
|
||
- Campo: `select`
|
||
- Tre opzioni:
|
||
|
||
| Valore | Significato |
|
||
|--------|-------------|
|
||
| `DRAFT` | Bozza — il prodotto **non è visibile** nel negozio. Usalo mentre stai lavorando al prodotto. |
|
||
| `PUBLISHED` | Pubblicato — il prodotto **è visibile** nel negozio e acquistabile. |
|
||
| `ARCHIVED` | Archiviato — il prodotto è nascosto e non vendibile. Usato per prodotti discontinuati. |
|
||
|
||
**Consiglio:** inizia sempre con `DRAFT`, verifica tutto, poi cambia in `PUBLISHED`.
|
||
|
||
---
|
||
|
||
**Categories** *(opzionale)*
|
||
- Campo: `checkbox multipli`
|
||
- Assegna il prodotto a una o più categorie del catalogo
|
||
- Le categorie aiutano i clienti a navigare il negozio
|
||
- Un prodotto può appartenere a più categorie contemporaneamente
|
||
- Se non hai ancora creato categorie, vai su http://localhost/admin/categories
|
||
|
||
---
|
||
|
||
#### Sezione 4 — Custom Attributes
|
||
|
||
**Attributes** *(opzionale)*
|
||
- Campo: `JSON`
|
||
- Permette di aggiungere attributi personalizzati in formato JSON
|
||
- Gli attributi disponibili dipendono dal **Product Type** selezionato nella sezione 1
|
||
- Esempio per un prodotto di abbigliamento:
|
||
|
||
```json
|
||
{
|
||
"colore": "Rosso",
|
||
"taglie_disponibili": ["S", "M", "L", "XL"],
|
||
"materiale": "100% cotone",
|
||
"lavaggio": "30°C"
|
||
}
|
||
```
|
||
|
||
- Esempio per un prodotto elettronico:
|
||
|
||
```json
|
||
{
|
||
"marca": "Samsung",
|
||
"modello": "Galaxy S25",
|
||
"ram_gb": 12,
|
||
"storage_gb": 256,
|
||
"colori": ["Nero", "Bianco", "Verde"]
|
||
}
|
||
```
|
||
|
||
> Il JSON deve essere valido: usa virgolette doppie per le chiavi, nessuna virgola finale nell'ultimo elemento.
|
||
|
||
---
|
||
|
||
#### Salvare il prodotto
|
||
|
||
Una volta compilati tutti i campi obbligatori, clicca **"Save Product"** (o "Create Product").
|
||
|
||
Se ci sono errori di validazione, il form li mostra in rosso accanto al campo corrispondente. I più comuni:
|
||
- Slug già usato da un altro prodotto → cambia lo slug manualmente
|
||
- Prezzo negativo → inserire 0 o un valore positivo
|
||
- JSON non valido negli attributi → controlla la sintassi
|
||
|
||
---
|
||
|
||
### 3c. Modifica Prodotto Esistente
|
||
|
||
1. Vai su http://localhost/admin/products
|
||
2. Trova il prodotto nella lista (usa la ricerca se necessario)
|
||
3. Clicca **"Edit"** sulla riga del prodotto
|
||
4. Modifica i campi desiderati
|
||
5. Clicca **"Save Product"**
|
||
|
||
Tutti i campi sono modificabili in qualsiasi momento.
|
||
|
||
**Cambiare lo status da DRAFT a PUBLISHED** è il modo per rendere il prodotto visibile nel negozio.
|
||
|
||
---
|
||
|
||
### 3d. Archiviare un Prodotto
|
||
|
||
L'archiviazione rende il prodotto invisibile nel negozio senza eliminarlo.
|
||
|
||
1. Dalla lista prodotti, clicca **"Archive"** sulla riga del prodotto
|
||
2. Oppure, entra in modifica e cambia lo Status in `ARCHIVED`
|
||
|
||
I prodotti archiviati non vengono eliminati: puoi ripristinarli in qualsiasi momento cambiando lo status in `PUBLISHED`.
|
||
|
||
> **Non esiste un'eliminazione definitiva** dall'interfaccia admin — l'archiviazione è l'operazione più "definitiva" disponibile.
|
||
|
||
---
|
||
|
||
### 3e. Immagini prodotto
|
||
|
||
La sezione **Images** appare in fondo alla pagina di modifica di un prodotto già salvato (non durante la creazione iniziale).
|
||
|
||
#### Formato consigliato
|
||
|
||
| Proprietà | Valore |
|
||
|-----------|--------|
|
||
| **Proporzione** | **1:1 (quadrata)** |
|
||
| **Risoluzione minima** | 800 × 800 px |
|
||
| **Risoluzione consigliata** | 1200 × 1200 px |
|
||
| **Formati accettati** | JPEG, PNG, WebP |
|
||
| **Dimensione massima** | 5 MB per file |
|
||
|
||
Il negozio mostra sempre le immagini in formato quadrato ritagliando al centro. Se carichi un'immagine rettangolare, le parti ai lati (o in alto/basso) verranno tagliate e non saranno visibili.
|
||
|
||
> **Esempio:** una foto 1600×900 px (orizzontale) verrà mostrata ritagliata al centro come un quadrato 900×900 px — i bordi sinistro e destro spariranno.
|
||
|
||
#### Come aggiungere immagini
|
||
|
||
1. Crea e salva il prodotto → il sistema ti reindirizza alla pagina di modifica
|
||
2. Scorri fino alla sezione **"Images"** in fondo al form
|
||
3. Clicca **"Aggiungi immagini"** e seleziona uno o più file
|
||
4. Le anteprime appaiono subito nella griglia — il preview è quadrato, identico a come l'immagine apparirà nel negozio
|
||
5. Puoi caricare più immagini: la **prima** è quella mostrata nelle card del catalogo
|
||
|
||
#### Come eliminare un'immagine
|
||
|
||
Passa il mouse sopra l'anteprima e clicca il pulsante **✕** che appare nell'angolo in alto a destra.
|
||
|
||
---
|
||
|
||
## 4. Tipi di Prodotto (Product Types)
|
||
|
||
**URL:** http://localhost/admin/product-types
|
||
|
||
I Product Types definiscono la struttura degli attributi custom per categoria di prodotti. **Vanno creati prima dei prodotti.**
|
||
|
||
### Cos'è un Product Type
|
||
|
||
Un tipo di prodotto è essenzialmente uno schema che dice: "i prodotti di questa categoria hanno questi attributi". Esempio:
|
||
|
||
- Tipo **"Abbigliamento"** → attributi: colore, taglia, materiale
|
||
- Tipo **"Elettronica"** → attributi: marca, RAM, storage, display
|
||
- Tipo **"Libri"** → attributi: autore, ISBN, editore, pagine
|
||
|
||
### Come creare un Product Type
|
||
|
||
1. Vai su http://localhost/admin/product-types
|
||
2. Clicca **"New Product Type"**
|
||
3. Compila:
|
||
- **Name:** nome del tipo (es. `Abbigliamento`)
|
||
- **Schema (JSON):** definizione degli attributi in formato JSON Schema
|
||
|
||
Esempio di schema:
|
||
|
||
```json
|
||
{
|
||
"type": "object",
|
||
"properties": {
|
||
"colore": { "type": "string" },
|
||
"taglia": { "type": "string" },
|
||
"materiale": { "type": "string" }
|
||
}
|
||
}
|
||
```
|
||
|
||
4. Clicca **"Save"**
|
||
|
||
### Modifica e gestione
|
||
|
||
- I tipi esistenti si possono modificare cliccando **"Edit"**
|
||
- Modificare uno schema non altera i prodotti già creati con quel tipo
|
||
- Usare nomi chiari e descrittivi per ritrovarli facilmente
|
||
|
||
---
|
||
|
||
## 5. Categorie
|
||
|
||
**URL:** http://localhost/admin/categories
|
||
|
||
Le categorie organizzano il catalogo e aiutano i clienti a navigare il negozio.
|
||
|
||
### Struttura gerarchica
|
||
|
||
Le categorie supportano una gerarchia padre/figlio:
|
||
|
||
```
|
||
Abbigliamento (padre)
|
||
├── Uomo
|
||
│ ├── T-shirt
|
||
│ └── Pantaloni
|
||
└── Donna
|
||
├── Vestiti
|
||
└── Scarpe
|
||
```
|
||
|
||
### Creare una categoria
|
||
|
||
1. Vai su http://localhost/admin/categories
|
||
2. Clicca **"New Category"**
|
||
3. Compila:
|
||
- **Name** *(obbligatorio):* nome della categoria (es. `Sneaker`)
|
||
- **Slug** *(obbligatorio):* generato automaticamente, usato nell'URL
|
||
- **Parent Category** *(opzionale):* seleziona la categoria padre per creare una sottocategoria
|
||
4. Clicca **"Save"**
|
||
|
||
### Modificare una categoria
|
||
|
||
Clicca **"Edit"** accanto alla categoria, modifica i campi, salva.
|
||
|
||
### Eliminare una categoria
|
||
|
||
- Clicca **"Delete"** accanto alla categoria
|
||
- **Attenzione:** non è possibile eliminare una categoria se ha prodotti assegnati. Riassegna prima i prodotti ad altre categorie.
|
||
|
||
---
|
||
|
||
## 6. Ordini
|
||
|
||
**URL:** http://localhost/admin/orders
|
||
|
||
Gestisci tutti gli ordini ricevuti nel negozio.
|
||
|
||
### Lista ordini
|
||
|
||
La lista mostra tutti gli ordini con:
|
||
- ID ordine
|
||
- Cliente (nome ed email)
|
||
- Data
|
||
- Importo totale
|
||
- Stato corrente
|
||
|
||
#### Filtrare per stato
|
||
|
||
Usa il menu **"Filter by status"** per vedere solo gli ordini in un determinato stato:
|
||
|
||
| Stato | Descrizione |
|
||
|-------|-------------|
|
||
| `PENDING` | Ordine creato, pagamento non ancora completato |
|
||
| `PAID` | Pagamento ricevuto, in attesa di evasione |
|
||
| `FULFILLED` | Ordine evaso e spedito al cliente |
|
||
| `CANCELLED` | Ordine annullato |
|
||
| `REFUNDED` | Rimborso effettuato |
|
||
|
||
### Dettaglio ordine
|
||
|
||
Clicca su un ordine per aprire il dettaglio. Trovi:
|
||
|
||
- **Dati cliente:** nome, email, indirizzo di spedizione
|
||
- **Prodotti ordinati:** lista articoli con quantità e prezzo unitario
|
||
- **Riepilogo economico:**
|
||
- Subtotale
|
||
- Tasse
|
||
- Spedizione
|
||
- **Totale**
|
||
- **Dati pagamento:** provider (Stripe), ID transazione, data pagamento
|
||
|
||
### Aggiornare lo stato di un ordine
|
||
|
||
1. Apri il dettaglio dell'ordine
|
||
2. Trova il menu **"Update Status"**
|
||
3. Seleziona il nuovo stato
|
||
4. Clicca **"Update"**
|
||
|
||
**Flusso tipico di un ordine:**
|
||
```
|
||
PENDING → PAID → FULFILLED
|
||
```
|
||
|
||
In caso di problemi:
|
||
```
|
||
PAID → CANCELLED → REFUNDED
|
||
```
|
||
|
||
---
|
||
|
||
## 7. Clienti
|
||
|
||
**URL:** http://localhost/admin/customers
|
||
|
||
Visualizza tutti i clienti registrati nel negozio.
|
||
|
||
### Informazioni disponibili
|
||
|
||
Per ogni cliente viene mostrato:
|
||
- **Email** e nome
|
||
- **Stato verifica email:** verificata o non verificata
|
||
- **Numero di ordini** effettuati
|
||
- Data registrazione
|
||
|
||
### Cosa puoi fare
|
||
|
||
La sezione clienti è attualmente in **sola lettura**: puoi visualizzare i clienti ma non modificarli o eliminarli dall'interfaccia admin.
|
||
|
||
Per operazioni avanzate sui clienti (reset password, eliminazione account) è necessario intervenire direttamente sul database.
|
||
|
||
---
|
||
|
||
## 8. Recensioni
|
||
|
||
**URL:** http://localhost/admin/reviews
|
||
|
||
Modera le recensioni lasciate dai clienti sui prodotti.
|
||
|
||
### Stati delle recensioni
|
||
|
||
| Stato | Descrizione |
|
||
|-------|-------------|
|
||
| `PENDING` | Recensione appena inviata, in attesa di moderazione |
|
||
| `APPROVED` | Recensione approvata e visibile nel negozio |
|
||
| `HIDDEN` | Recensione nascosta (spam, contenuto inappropriato) |
|
||
|
||
### Filtrare le recensioni
|
||
|
||
Usa il filtro per stato per vedere solo le recensioni che richiedono attenzione (es. solo `PENDING`).
|
||
|
||
### Moderare una recensione
|
||
|
||
Ogni recensione mostra:
|
||
- **Prodotto** a cui è riferita
|
||
- **Valutazione** in stelle (1-5)
|
||
- **Testo** della recensione
|
||
- **Cliente** che l'ha scritta
|
||
- **Data**
|
||
|
||
Azioni disponibili:
|
||
- **Approve** → rende la recensione visibile nel negozio
|
||
- **Hide** → nasconde la recensione (non viene eliminata)
|
||
- **Reset to Pending** → riporta la recensione in stato di attesa
|
||
|
||
**Best practice:** approva rapidamente le recensioni PENDING per mantenere il negozio attivo e credibile. Nascondi solo recensioni con contenuto offensivo o spam.
|
||
|
||
---
|
||
|
||
## 9. Utenti Admin
|
||
|
||
**URL:** http://localhost/admin/admin-users
|
||
|
||
Gestisci gli account che possono accedere al pannello admin.
|
||
|
||
### Ruoli disponibili
|
||
|
||
| Ruolo | Permessi |
|
||
|-------|---------|
|
||
| `ADMIN` | Accesso completo al pannello, gestione prodotti/ordini/clienti |
|
||
| `OWNER` | Come ADMIN, più la possibilità di gestire altri admin e le impostazioni di sistema |
|
||
|
||
### Creare un nuovo admin
|
||
|
||
1. Vai su http://localhost/admin/admin-users
|
||
2. Clicca **"New Admin User"**
|
||
3. Compila:
|
||
- **Name:** nome del nuovo admin
|
||
- **Email:** email di accesso (deve essere unica)
|
||
- **Password:** password iniziale (il sistema richiederà il cambio al primo login)
|
||
- **Role:** seleziona `ADMIN` o `OWNER`
|
||
4. Clicca **"Create"**
|
||
|
||
Il nuovo admin riceverà le credenziali e dovrà cambiare la password al primo accesso.
|
||
|
||
### Eliminare un admin
|
||
|
||
Clicca **"Delete"** accanto all'admin da rimuovere.
|
||
|
||
> **Attenzione:** non è possibile eliminare il proprio account. Non eliminare l'ultimo account `OWNER` per non perdere l'accesso al pannello.
|
||
|
||
---
|
||
|
||
## 10. Impostazioni
|
||
|
||
**URL:** http://localhost/admin/settings
|
||
|
||
Configura le impostazioni globali del negozio.
|
||
|
||
### Campi configurabili
|
||
|
||
| Campo | Descrizione | Esempio |
|
||
|-------|-------------|---------|
|
||
| **Site Name** | Nome del negozio | `Il Mio Negozio` |
|
||
| **Site Description** | Descrizione breve | `Il miglior ecommerce italiano` |
|
||
| **Support Email** | Email di contatto per i clienti | `support@mionegozio.it` |
|
||
| **Currency** | Valuta di default | `EUR` |
|
||
| **Tax Rate** | Aliquota IVA in percentuale | `22` (per il 22%) |
|
||
|
||
### Come modificare
|
||
|
||
1. Vai su http://localhost/admin/settings
|
||
2. Modifica i campi desiderati
|
||
3. Clicca **"Save Settings"**
|
||
|
||
Le modifiche hanno effetto immediato su tutto il negozio.
|
||
|
||
---
|
||
|
||
## 11. Flusso Consigliato per Iniziare
|
||
|
||
Se stai configurando il negozio da zero, segui quest'ordine:
|
||
|
||
### Step 1 — Configura le impostazioni base
|
||
Vai su **Impostazioni** e imposta nome negozio, valuta e aliquota IVA.
|
||
|
||
### Step 2 — Crea i Product Types
|
||
Vai su **Product Types** e crea i tipi per le tue categorie di prodotti.
|
||
Esempio: "Abbigliamento", "Accessori", "Scarpe".
|
||
|
||
### Step 3 — Crea le Categorie
|
||
Vai su **Categorie** e crea la struttura del catalogo.
|
||
Esempio: "Uomo > T-shirt", "Donna > Vestiti".
|
||
|
||
### Step 4 — Aggiungi i Prodotti
|
||
Vai su **Prodotti** → **New Product** e compila il form.
|
||
Inizia con `DRAFT` per testare, poi passa a `PUBLISHED`.
|
||
|
||
### Step 5 — Verifica il negozio
|
||
Apri http://localhost nel browser (non `/admin`) e naviga il negozio come farebbe un cliente.
|
||
Controlla che i prodotti pubblicati siano visibili e che le categorie siano corrette.
|
||
|
||
### Step 6 — Configura i pagamenti
|
||
Aggiungi le chiavi Stripe test nel file `.env` per testare il flusso di acquisto completo.
|
||
|
||
---
|
||
|
||
## Riferimenti rapidi
|
||
|
||
| Sezione | URL |
|
||
|---------|-----|
|
||
| Dashboard | http://localhost/admin |
|
||
| Prodotti | http://localhost/admin/products |
|
||
| Nuovo Prodotto | http://localhost/admin/products/new |
|
||
| Product Types | http://localhost/admin/product-types |
|
||
| Categorie | http://localhost/admin/categories |
|
||
| Ordini | http://localhost/admin/orders |
|
||
| Clienti | http://localhost/admin/customers |
|
||
| Recensioni | http://localhost/admin/reviews |
|
||
| Admin Users | http://localhost/admin/admin-users |
|
||
| Impostazioni | http://localhost/admin/settings |
|
||
| Email (Mailpit) | http://localhost:8025 |
|