🏨

hotel — Guida completa

Tutto quello che devi sapere per gestire il sito, le prenotazioni, gli eventi, i contenuti e gli strumenti email dell'hotel direttamente dal pannello WordPress.

📋 Sommario

1. Camere & prezzi — gestione camere con galleria, prezzi base e regole stagionali per formula, camera e periodo; prezzo calcolato live al momento della scelta delle date; lista d'attesa automatica se la camera non è disponibile.
2. Prenotazioni — flusso completo con validazione date, selezione formula, pacchetti ed extra (servizi prenotabili con costo), pagamento simulato (carte Luhn) o reale con Stripe (deposito 30%), email automatiche a cliente e admin; online check-in pre-arrivo inviato 3 giorni prima.
3. Servizi & Ristorante — catalogo servizi con slider in home e accordion in pagina dedicata; servizi prenotabili con costo aggiuntivo; ristorante con turni pranzo/cena, controllo disponibilità per turno, widget KPI prenotazioni settimana corrente in dashboard.
4. Pacchetti, eventi & gift card — pacchetti (Romantico, Famiglia, Business, Benessere) a prezzo fisso/notte/persona selezionabili nel form o in pagina dedicata; eventi con sconto % e banner automatico; gift card digitali con codice univoco e riscatto.
5. Clienti, fedeltà & recensioni — area riservata con storico prenotazioni, punti fedeltà (Silver/Gold/Platinum, 10 punti/notte, bonus compleanno), programma referral, recensioni con approvazione admin visibili in home e pagina dedicata; widget recensioni Google/TripAdvisor.
6. Operazioni & strumenti admin — housekeeping Kanban con task automatici al check-out, fattura/ricevuta stampabile, channel manager iCal (Booking.com/Airbnb/Expedia), log attività, dashboard KPI con grafici, newsletter, inbox locale, GDPR, PWA iOS/Android.

📋 Indice

  1. Panoramica del sito
  2. Accessi e ruoli
  3. Gestione camere
  4. Gestione servizi
  5. Sistema prezzi
  6. Tipologie di prezzo
  7. Sistema di prenotazione
  8. Area riservata clienti
  9. Gestione prenotazioni (admin)
  10. Notifiche email
  11. Slider e immagini
  12. Menu di navigazione
  13. Footer e widget
  14. Pagina Chi Siamo e stelle
  15. Impostazioni generali
  16. Configurazione email SMTP
  17. Pagina Contatti
  18. Sistema eventi e offerte
  19. Pagine da creare nel backend
  20. Utenti Hotel
  21. Newsletter
  22. Hotel Mailer — email e inbox locale
  23. Note per i test
  24. Privacy e GDPR
  25. Progressive Web App (PWA)
  26. Recensioni clienti
  27. Pacchetti
  28. Servizi & Ristorante
  29. Punti fedeltà
  30. Calendario disponibilità
  31. Channel Manager (iCal)
  32. Online Check-in
  33. Servizi Extra upsell
  34. Fattura e ricevuta
  35. Gift Card digitali
  36. Housekeeping
  37. Log attività
  38. Programma Referral
  39. Recensioni Google & TripAdvisor
  40. Stripe Pagamenti
  41. Lista d'attesa
  42. Prenotazioni multi-canale e integrazione PMS
  43. Punti fedeltà — aggiornamenti
1

Panoramica del sito

🚀 Un sistema completo di prenotazione, gestione prezzi e comunicazione

Il sito permette agli ospiti di esplorare le camere, scoprire eventi con offerte speciali, prenotare e ricevere comunicazioni via newsletter. I prezzi sono completamente dinamici per giorno, camera e formula di soggiorno.

🛏️

Camere con slider

Galleria, prezzi dinamici per formula, prenotazione con date in cima alla sidebar.

📅

Prezzi per giorno

Prezzo base + regole stagionali per camera, formula e periodo. Fino a 4 prezzi in una regola sola.

🎉

Eventi con sconto

Crea eventi con sconto % sui prezzi del periodo. Banner automatico sulla pagina camera.

📧

Newsletter

Iscrizione con conferma via link email. Integrazione MailChimp opzionale.

📬

Inbox locale

Tutte le email del sito simulate in un'inbox admin. Link cliccabili per test completi.

✉️

Invia email

Invia comunicazioni a utenti hotel o iscritti newsletter direttamente dall'admin.

📱

Progressive Web App

Il sito si installa come app su iOS e Android con icona nella home, splash screen e funzionamento offline.

Plugin installati (22 plugin)

PluginCap.Funzione
Hotel DashboardMenu principale, KPI, grafici revenue/occupancy, widget ristorante settimana
Hotel Booking7Prenotazioni, prezzi stagionali per giorno/camera/formula, pagamento simulato
Hotel Pacchetti27Pacchetti Romantico/Famiglia/Business/Benessere, integrazione form prenotazione
Hotel Servizi28Catalogo servizi, slider home, ristorante con turni e disponibilità
Hotel Extra33Servizi upsell aggiuntivi selezionabili durante la prenotazione
Hotel Recensioni26Recensioni clienti con approvazione admin, home page dinamica
Hotel Reviews Widget39Visualizza recensioni Google (Places API) e TripAdvisor
Hotel Fidelity29Punti fedeltà Silver/Gold/Platinum, bonus compleanno, sconti automatici
Hotel Referral38Programma "Porta un amico": codici referral univoci, punti bonus
Hotel Gift Card35Gift card digitali con codice, invio email e riscatto al momento della prenotazione
Hotel Area Riservata8Account clienti, area personale, storico prenotazioni
Hotel Waitlist41Lista d'attesa per camere non disponibili con notifica automatica
Hotel Booking (multi-canale)42Form desk admin, REST API PMS, webhook outbound, colonna canale
Hotel Fidelity (agg.)43Impostazioni configurabili, bug fix sconto, shortcode pagina pubblica
Hotel Checkin32Online check-in pre-arrivo, email con link sicuro 3 giorni prima
Hotel Housekeeping36Board Kanban pulizie, task automatici al check-out, assegnazione personale
Hotel Fattura34Genera ricevuta/fattura HTML stampabile per prenotazioni completate
Hotel Stripe40Deposito online 30% tramite Stripe Checkout (richiede account Stripe)
Hotel Calendario30Calendario FullCalendar visuale per disponibilità camere
Hotel Channel31Sync iCal bidirezionale con Booking.com, Airbnb ed Expedia
Hotel Log37Registro attività admin: chi ha fatto cosa e quando
Hotel Newsletter21Iscrizione newsletter con conferma link, integrazione MailChimp
Hotel Mailer22Compositore email admin + inbox simulata per test locali (MAMP)
Hotel PWA25Progressive Web App — manifest, service worker, icone, iOS e Android

Pagine principali

PaginaURLNote
Home/Hero con slider, camere, eventi, servizi. Bottone newsletter nel hero.
Camere/camereGriglia senza prezzo — appare solo dopo la scelta delle date
Singola camera/camere/nomeDate in cima → prezzo → formula → pagamento
Contatti/contattiForm protetto da captcha, honeypot e rate limiting
Eventi/eventiLista eventi attivi/futuri
Accesso/accessoLogin e registrazione clienti — non per l'admin
Area Riservata/area-riservataDashboard prenotazioni cliente

2

Accessi e ruoli

RuoloCome accedePermessi
Amministratore /wp-admin o /wp-login.php Gestione completa: camere, eventi, prezzi, prenotazioni, newsletter, email, utenti
Cliente (Subscriber) /accesso con email e password del sito Prenotazione, gestione proprie prenotazioni, modifica profilo
⚠️ Non usare mai /accesso per entrare nel backend. Quella pagina è riservata ai clienti. Per il pannello admin usa sempre /wp-admin.

Test con due utenti nello stesso browser

Non è possibile — i cookie di autenticazione sono condivisi tra tutte le schede. Soluzioni:

ScenarioSoluzione
Admin + cliente in paralleloUsa due browser diversi (es. Chrome per admin, Firefox per cliente)
Test rapidoUsa una finestra in incognito per uno dei due

3

Gestione camere

Vai su Camere → Aggiungi Camera
Titolo e descrizione nell'editor
Meta box "Dettagli Camera": prezzi base per formula, N. camere fisiche, N. ospiti max, m², tipo letto, servizi, disponibilità
Aggiungi immagini (vedi cap. 11) e pubblica
Il campo "N. ospiti max" è usato anche nel form di prenotazione evento per limitare il dropdown ospiti in base alla camera selezionata.

Prezzo nella pagina camera

Non mostrato nelle card né in home page. Nella pagina singola camera compare solo dopo aver scelto le date di check-in/check-out — aggiornato in tempo reale via AJAX per ogni formula.

Banner evento automatico

Se le date selezionate si sovrappongono (anche 1 giorno) a un evento con sconto > 0%, appare un banner dorato prima del bottone "Prosegui al pagamento" con link all'offerta evento.


4

Gestione servizi

Servizi Hotel → Aggiungi Servizio → titolo, descrizione, excerpt
Meta box "Dettagli Servizio": Tipo (Ristorante, Spa, Wellness, Colazione, Altro), Emoji/Icona, Orari/Menù, Politiche
Spunta "Prenotabile con la camera" → appare nell'accordion del form di prenotazione; inserisci il Costo aggiuntivo (0 = incluso)
Se il tipo è Ristorante: imposta Max coperti per turno (default 30) — il sistema verifica la disponibilità per pranzo e cena separatamente
Immagine in evidenza → Pubblica

Dove appaiono i servizi

DoveCome
Home pageSlider orizzontale con icona, nome, badge prezzo, CTA diretta
Pagina /serviziAccordion espandibile con dettagli, orari, CTA (prenotazione, tavolo o contatti)
Form prenotazione cameraAccordion "⚙️ Servizi aggiuntivi" — solo i servizi prenotabili con camera; costo aggiunto al totale
Per il ristorante la prenotazione tavolo avviene dalla pagina /servizi con un form inline che mostra i posti disponibili in tempo reale. La gestione è in Hotel Elegance → Ristorante.

5

Sistema prezzi

📈 Prezzo base + regole stagionali

Il prezzo base vale per tutti i giorni dell'anno. Le regole stagionali lo sovrascrivono per i periodi indicati, con granularità massima: per camera, per formula, per ogni singolo giorno.

Livello 1 — Prezzi base (scheda camera)

Impostati nel meta box "Dettagli Camera". Valgono dove non esiste una regola stagionale.

Livello 2 — Regole stagionali (Prenotazioni → Prezzi Stagionali)

ModalitàQuando usarla
Stesso prezzo per tutte le formuleIl rialzo/ribasso è uguale per Solo camera, Colazione ecc.
Prezzi distinti per formula4 campi in una regola sola — risparmia 3 regole. Lascia vuoto = usa il prezzo base per quella formula.

Priorità

#CameraFormula
1° (max)SpecificaSpecifica
SpecificaTutte
TutteSpecifica
TutteTutte
5° (min)Prezzo base della camera
Regola per un singolo giorno: Dal 31/12 Al 01/01 = solo Capodanno.

6

Tipologie di prezzo

Le tipologie sono le formule di soggiorno selezionabili dal cliente nel form di prenotazione: Solo camera, Camera e colazione, Mezza pensione, Pensione completa. Puoi aggiungere, rinominare o eliminare formule da Prenotazioni → Tipologie di Prezzo.

Tipologie predefinite al primo avvio

IDNomeDescrizione
1Solo cameraPernottamento senza pasti
2Camera e colazioneB&B – pernottamento con colazione inclusa
3Mezza pensionePernottamento con colazione e cena
4Pensione completaPernottamento con tutti i pasti inclusi

Aggiungere una tipologia

Prenotazioni → Tipologie di Prezzo → compila Nome e Descrizione breveAggiungi tipologia
La nuova formula appare subito nel form di prenotazione di ogni camera
Vai su Camere → modifica camera → meta box "Dettagli Camera" → imposta il prezzo base per la nuova formula

Modificare o eliminare una tipologia

Dalla lista in Prenotazioni → Tipologie di Prezzo → clicca Modifica per cambiare nome/descrizione, oppure Elimina per rimuoverla
⚠️ Non è possibile eliminare l'ultima tipologia rimasta. Le prenotazioni già effettuate mantengono il nome della formula salvato al momento della prenotazione — rimuovere una tipologia non altera lo storico.
Le regole stagionali in Prezzi Stagionali si aggiornano automaticamente: la nuova tipologia appare nei campi della modalità "Prezzi distinti per formula".

7

Sistema di prenotazione

Flusso dalla pagina camera

Il cliente apre la pagina camera e inserisce check-in / check-out in cima alla sidebar (date validate: check-in ≥ oggi, check-out > check-in)
Il prezzo per ogni formula compare subito via AJAX
Se le date coincidono con un evento con sconto → compare il banner offerta dorato
Sceglie formula e ospiti → accordion "🎁 Pacchetti": seleziona un pacchetto (opzionale, prezzo aggiunto al totale)
Accordion "⚙️ Servizi aggiuntivi": seleziona uno o più servizi prenotabili (costo per persona aggiunto al totale)
Riepilogo totale aggiornato in tempo reale → "Prosegui al pagamento"
Inserisce i dati carta → "Paga e Prenota" → email di conferma (simulata in locale)

Convalida date nel form

Il campo check-in ha min="oggi" e il check-out si aggiorna dinamicamente con min="check-in + 1 giorno". Non è possibile selezionare date passate o invertite.

Carte di credito di test — pagamento simulato

⚠️ Il pagamento è completamente simulato. Nessun addebito reale. Usa solo questi numeri — numeri inventati non passano la validazione Luhn.
VISA — Test Card
4111 1111 1111 1111
Intestatario: Test UserScad: 12/26CVV: 123
VISA — Test Card 2
4242 4242 4242 4242
Intestatario: Test UserScad: 12/26CVV: 123
MASTERCARD — Test Card
5500 0000 0000 0004
Intestatario: Test UserScad: 12/26CVV: 123
MASTERCARD — Test Card 2
5105 1051 0510 5100
Intestatario: Test UserScad: 12/26CVV: 123
AMEX — Test Card
3782 822463 10005
Intestatario: Test UserScad: 12/26CVV: 1234
Questi numeri superano l'algoritmo Luhn (validazione matematica standard delle carte) ma non effettuano alcun addebito reale. Qualsiasi altro numero inventato verrà rifiutato.

Regola di cancellazione / modifica

Default: 72 ore prima del check-in. Modificabile da Prenotazioni → Impostazioni.


8

Area riservata clienti

Accessibile da /area-riservata dopo il login cliente.

FunzioneCome
Vedere le prenotazioniTabella con filtri per stato
Modificare una prenotazionePulsante Modifica — se mancano > 72h al check-in
Cancellare una prenotazionePulsante Cancella — stessa regola oraria
Lasciare una recensionePulsante Recensisci su prenotazioni "completate" non ancora recensite → modal con stelle, titolo e testo → invio per approvazione admin
Scaricare la ricevutaPulsante Ricevuta su prenotazioni completate (se plugin Hotel Fattura attivo)
Punti fedeltàSezione "I tuoi punti" con saldo, livello (Ospite/Silver/Gold/Platinum) e storico movimenti (se plugin Hotel Fidelity attivo)
Codice referralSezione "Porta un amico" con codice personale condivisibile (se plugin Hotel Referral attivo)
Modificare il profiloPulsante Modifica profilo

Stati prenotazione

In attesaRicevuta, in attesa conferma staff
ConfermataPagamento ricevuto
CancellataAnnullata
CompletataSoggiorno terminato

9

Gestione prenotazioni (admin)

Prenotazioni → filtra per stato → cambia stato dal menu a tendina → Aggiorna → email automatica al cliente

Prenotazioni → Disponibilità: calendario per camera. 🟢 libera · 🟡 in attesa · 🔴 confermata


10

Notifiche email automatiche

EventoClienteAdmin
Nuova registrazione✅ Benvenuto✅ Dati utente
Nuova prenotazione✅ Riepilogo✅ Notifica
Prenotazione evento✅ Riepilogo con sconto✅ Notifica
Modifica prenotazione✅ Date vecchie/nuove✅ Dettaglio
Cancellazione✅ Conferma✅ Notifica
Cambio stato (admin)✅ Nuovo stato✅ Conferma
Form contatti✅ Copia messaggio✅ Con Reply-To
Richiesta iscrizione newsletter✅ Link di conferma (valido 48h)
Conferma iscrizione newsletter✅ Benvenuto + link disiscrizione
In locale (MAMP) con la modalità locale attiva del plugin Hotel Mailer, tutte queste email vengono intercettate e mostrate nell'inbox admin invece di essere inviate. Vedi cap. 22.

11

Slider e immagini

SliderDove si configura
Sfondo Home / Chi Siamo / Pagina GeneraleAspetto → Personalizza → Hero (home) · Pagine → meta box galleria (altri)
Galleria cameraCamere → modifica → Immagine in evidenza + Galleria Immagini
Galleria servizioServizi Hotel → modifica → Immagine in evidenza + Galleria
Immagine eventoEventi → modifica → Immagine in evidenza
Slider fondo Pagina GeneralePagine → meta box "Galleria slider in fondo" — scorre da destra a sinistra, click = lightbox

12

Menu di navigazione

Aspetto → Menu → crea menu → aggiungi pagine → ordina → scegli posizione → Salva
Aggiungi Contatti ed Eventi al menu principale.

13

Footer e widget

Aspetto → Widget → trascina widget nelle 4 colonne del footer.

ColonnaContenuto suggerito
1 (Brand)Logo + descrizione
2Menu link rapidi
3Lista servizi
4 (Contatti)Indirizzo, telefono, email, orari

14

Pagina Chi Siamo

Stelle hotel

Aspetto → Personalizza → Informazioni Hotel → scegli stelle → Pubblica.

Slider hero di sfondo

Le immagini caricate nel meta box "Galleria Immagini – Slider di presentazione" della pagina Chi Siamo diventano lo sfondo animato del hero con il testo sovrapposto.

Immagine "La Nostra Storia"

Usa l'Immagine in evidenza della pagina Chi Siamo. Se non impostata, usa l'immagine in Aspetto → Personalizza → campo about_image.

Il Nostro Team

Meta box "Il Nostro Team — membri" nella pagina Chi Siamo. Per ogni membro: foto (upload), nome, ruolo. Trascina per riordinare. Lascia vuoto = mostra i membri di default hardcoded.


15

Impostazioni generali

Prenotazioni → Impostazioni → ore minime per cancellazione/modifica → Salva.

ValoreEffetto
48 (default)Cancellazione/modifica fino a 2 giorni prima del check-in
24Fino a 1 giorno prima
0Sempre possibile

16

Configurazione email SMTP (produzione)

In locale con MAMP non serve — usa la modalità locale del plugin Hotel Mailer (cap. 22). Configura SMTP solo quando vai in produzione.
Plugin → Aggiungi nuovo → "WP Mail SMTP" → Installa e Attiva
Su Google Account → Sicurezza → attiva verifica 2 passaggi → genera App Password (16 caratteri)
WP Mail SMTP → Impostazioni → Other SMTP:
CampoValore
SMTP Hostsmtp.gmail.com
Crittografia / PortaTLS / 587
Usernamela tua email Gmail
PasswordApp Password generata
Salva e testa con WP Mail SMTP → Test email
Una volta configurato SMTP, disattiva la modalità locale in Mailer Hotel → Impostazioni.

17

Pagina Contatti

ProtezioneCome funziona
HoneypotCampo invisibile che i bot compilano — vengono ignorati silenziosamente
Captcha matematico"Quanto fa 5+3?" — firmato HMAC, nessun cookie né API esterna. Non scade con la cache.
Rate limitingMax 3 invii/ora per IP. Per sbloccare in test: /wp-admin/?hotel_reset_ratelimit=1 (solo admin)
In locale l'email arriva nell'inbox simulata di Hotel Mailer (se modalità locale attiva). In produzione arriva a Impostazioni → Generali → Email amministrazione. Il mittente è il nome del sito invece di "WordPress".

18

Sistema eventi e offerte

🎉 Prezzi del sistema + sconto opzionale

Un evento usa i prezzi già fissati nel sistema per il suo periodo. L'unico campo aggiuntivo è lo sconto %. Se sconto = 0 nessun banner; se sconto > 0 banner automatico sulla pagina camera.

Come vengono calcolati i prezzi nella pagina evento: per ogni formula di soggiorno il sistema cerca la camera che ha una regola stagionale attiva per le date dell'evento e usa il suo prezzo (logica "a partire da"). Se nessuna camera ha regole stagionali usa i prezzi base. Per risultati corretti assicurati di creare le regole stagionali per quelle date in Prenotazioni → Prezzi Stagionali prima di pubblicare l'evento.

Creare un evento

Eventi → Aggiungi Evento → titolo, descrizione, excerpt
Meta box: Data inizio, Data fine, Location, Sconto %
Immagine in evidenza → Pubblica

Visibilità

DoveComportamento
Home pageMax 3 eventi attivi — link al dettaglio evento
Pagina /eventiLista completa + passati in grigio
Pagina cameraBanner se date si sovrappongono E sconto > 0

19

Pagine da creare nel backend

TitoloSlugTemplate
Homehome— (imposta come pagina statica in Impostazioni → Lettura)
CamerecamerePagina Camere
Chi Siamochi-siamoChi Siamo
ContatticontattiPagina Contatti
EventieventiPagina Eventi
AccessoaccessoPagina Accesso
Area Riservataarea-riservataArea Riservata
ManualemanualeManuale del Sito
Qualsiasi altra paginaa sceltaPagina Generale (hero + testo 6 colonne + slider fondo)

Dopo aver creato le pagine

Impostazioni → Lettura → "Una pagina statica" → seleziona Home
Aspetto → Menu → aggiungi le pagine al menu principale
Impostazioni → PermalinkSalva modifiche (indispensabile)

20

Utenti Hotel

Prenotazioni → Utenti Hotel — lista clienti registrati tramite il form /accesso con dati estesi (nome, cognome, telefono, indirizzo, città).

Pulsante "🔄 Sincronizza utenti mancanti": recupera i subscriber WordPress senza record in tabella (utile se qualcuno si è registrato prima dell'attivazione del plugin).


21

Newsletter

Flusso di iscrizione

Il visitatore clicca "✉️ Iscriviti alla Newsletter" nel hero di qualsiasi pagina
Compila nome, cognome, email nel modal
Riceve email con link di conferma (valido 48 ore) — in locale appare nell'inbox simulata
Clicca il link → iscrizione confermata → riceve email di benvenuto
Se MailChimp è abilitato → aggiunto automaticamente alla lista

Backend — Newsletter

PaginaFunzione
NewsletterLista iscritti con statistiche (totale / confermati / in attesa), filtri, elimina, esporta CSV
Newsletter → ImpostazioniTesto del modal, oggetto e corpo delle email (conferma + benvenuto), credenziali MailChimp

MailChimp — come configurare

Vai su mailchimp.com → Account → Extras → API Keys → Create A Key
Copia la chiave (formato xxxxxxxx-us21)
Audience ID: Audience → Manage Audience → Settings → Audience name and defaults → Audience ID
Incolla entrambi in Newsletter → Impostazioni → MailChimp → abilita la sincronizzazione

Variabili nelle email

VariabileSostituita con
{nome}Nome dell'iscritto
{cognome}Cognome
{email}Email dell'iscritto
{link}Link di conferma iscrizione
{sito}Nome del sito
{unsubscribe}Link di disiscrizione

22

Hotel Mailer — email e inbox locale

📬 Soluzione completa per test locali e invio email da admin

Il plugin Hotel Mailer risolve due problemi: permette di testare l'intero flusso email in locale senza SMTP, e offre uno strumento per inviare comunicazioni ai clienti e agli iscritti newsletter direttamente dall'admin.

Modalità locale (MAMP / sviluppo)

Quando la modalità locale è attiva, wp_mail() viene intercettato — nessuna email esce dal server ma tutte vengono catturate e mostrate nell'inbox admin.

Vai su Mailer Hotel → Impostazioni → spunta "Intercetta tutte le email" → Salva
Ora tutte le email del sito (newsletter, prenotazioni, contatti…) appaiono in Mailer Hotel → Inbox
Clicca su un'email per aprirla — i link nel testo sono cliccabili (es. link di conferma newsletter)
Per testare il flusso newsletter: registra un utente → vai nell'inbox → clicca il link di conferma → l'iscrizione viene completata
⚠️ Prima di andare in produzione: vai su Mailer Hotel → Impostazioni e disattiva la modalità locale. Configura WP Mail SMTP (cap. 16) per l'invio reale.

Invia Email (Mailer Hotel → Invia Email)

Seleziona i destinatari: utenti hotel / iscritti newsletter confermati / tutti / indirizzo singolo
Scrivi oggetto e messaggio. Usa {nome} e {email} per personalizzare
Clicca Invia Email — in modalità locale appariranno nell'inbox, in produzione vengono inviate

Mittente automatico

Il nome mittente è impostato automaticamente al nome del sito (Impostazioni → Generali → Titolo del sito). L'indirizzo mittente rimane wordpress@tuodominio.it — compatibile con tutti gli hosting senza configurazione aggiuntiva.

⚠️ In produzione: disattiva la modalità locale da Mailer Hotel → Impostazioni. Con la modalità locale attiva le email non vengono mai inviate realmente — appaiono solo nell'inbox simulata. Se il form dice "inviato con successo" ma non arriva nessuna email, controlla per prima cosa questa impostazione.

23

Note per i test

Checklist test completo in locale

TestCome
Pagamento prenotazioneUsa una delle carte di test del cap. 7. Usa 4111 1111 1111 1111 Visa, scad. 12/26, CVV 123
Conferma iscrizione newsletterIscriviti → vai in Mailer Hotel → Inbox → clicca il link di conferma nell'email
Email prenotazionePrenota una camera → vai nell'inbox → verifica il riepilogo
Form contattiInvia il form → vai nell'inbox → verifica
Admin e cliente in paralleloUsa due browser diversi o una finestra in incognito
Flush permalink dopo modificheImpostazioni → Permalink → Salva modifiche

Passaggio in produzione — checklist

Mailer Hotel → Impostazioni → disattiva modalità locale → Salva
Invia un messaggio dal form Contatti → controlla che arrivi all'email admin (controlla anche spam)
Se le email finiscono in spam: installa WP Mail SMTP con Gmail App Password (cap. 16)
Verifica che Newsletter → Impostazioni abbia i testi definitivi
Se usi MailChimp, inserisci API Key e Audience ID e abilita la sincronizzazione
Se sei bloccato dal rate limiting durante i test: /wp-admin/?hotel_reset_ratelimit=1

24

Privacy e GDPR

🔒 Plugin consigliato: GDPR Cookie Consent

Per un sito con prenotazioni, newsletter e form di contatto è obbligatorio rispettare il GDPR. Il plugin gratuito GDPR Cookie Consent (Cookie Notice) è il più usato in Italia, semplice da configurare e genera automaticamente la pagina Privacy Policy.

Installazione

Plugin → Aggiungi nuovo → cerca "GDPR Cookie Consent" → Installa e Attiva
Segui il wizard iniziale — imposta nome azienda, indirizzo, email DPO
Il plugin genera automaticamente le pagine Privacy Policy e Cookie Policy
Aggiungi la pagina Privacy Policy al footer: Aspetto → Widget → Footer Colonna 2 oppure direttamente nel menu footer

Cosa coprire per questo sito

ElementoStatoNote
Cookie banner Da configurare Installare GDPR Cookie Consent e configurare le categorie cookie
Privacy Policy Da creare Generata automaticamente dal plugin. Deve menzionare: dati prenotazioni, newsletter, form contatti
Termini e Condizioni Da creare Obbligatori per le prenotazioni online. Includere: politica cancellazione, pagamento, check-in/out
Newsletter — consenso ✅ Già presente Il form di iscrizione ha il testo del consenso. La conferma via email doppio opt-in è conforme GDPR
Newsletter — disiscrizione ✅ Già presente Link {unsubscribe} nell'email di benvenuto
Form contatti ✅ Già presente Testo privacy sotto il bottone "Invia"
Dati prenotazioni ✅ Già presente I dati sono salvati solo nel DB locale. Da menzionare nella Privacy Policy
Diritto all'oblio Manuale Per eliminare un utente: Utenti → elimina utente + elimina da Newsletter + elimina da Prenotazioni → Utenti Hotel

Confronto plugin privacy

PluginCostoProContro
GDPR Cookie Consent ⭐ consigliato Gratuito Semplice, conforme, genera Privacy Policy automatica Funzioni avanzate a pagamento
Complianz Gratuito / €79/anno Molto completo, scanner cookie automatico Pesante, complesso da configurare
iubenda Da €27/anno Standard italiano, aggiornamenti legali automatici Abbonamento mensile
Cookiebot Gratuito fino a 1 dominio Scanner automatico, professionale Costoso per più domini

Link utili da aggiungere al footer

Dopo aver installato il plugin e creato le pagine, aggiungi questi link al footer del sito tramite Aspetto → Widget → Footer Colonna 2 o nel menu footer (Aspetto → Menu → Menu Footer):
  • Privacy Policy
  • Cookie Policy
  • Termini e Condizioni

25

Progressive Web App (PWA)

📱 Il sito si installa come app su iPhone e Android

Grazie al plugin Hotel PWA, il sito viene riconosciuto dai browser come applicazione installabile. Gli ospiti possono aggiungere un'icona alla schermata home del proprio dispositivo e aprire il sito in modalità app — senza barre del browser, con splash screen e funzionamento parziale anche offline.

Come si attiva

Vai su Plugin → Plugin installati → attiva Hotel PWA
Le icone 192×192 e 512×512 vengono generate automaticamente dal logo del sito
Il file manifest.json e il service worker sw.js vengono serviti automaticamente
Controlla lo stato da Hotel PWA nel menu admin — mostra se le icone sono pronte, se GD è disponibile e i link diretti a manifest.json e sw.js.

Impostazioni — Hotel PWA

CampoFunzione
Icona app (logo)Carica un'immagine JPEG/PNG per generare le icone dell'app. Se non caricata usa il logo incluso nel plugin.
Nome appNome completo mostrato sotto l'icona dopo l'installazione
Nome breveMax 12 caratteri — usato quando lo spazio è limitato (es. dock Android)
Colore temaColore della barra del browser su Android (default: #1a1a2e)
Colore sfondo splashColore della schermata di caricamento quando si apre l'app
Rigenera iconeSovrascrive le icone esistenti — utile dopo aver caricato un nuovo logo

Come installare l'app su iOS (iPhone / iPad)

Apri il sito in Safari (obbligatorio — Chrome su iOS non supporta l'installazione)
Tocca il pulsante Condividi (icona □↑ in basso)
Scorri e seleziona "Aggiungi a Home"
Modifica il nome se vuoi, poi tocca Aggiungi — l'icona appare nella schermata home

Come installare l'app su Android

Apri il sito in Chrome
Compare automaticamente un banner "Installa app" in basso dopo qualche secondo
In alternativa: menu ⋮ → Aggiungi a schermata Home
Conferma → l'icona appare nella home del dispositivo
Su Android il banner di installazione compare automaticamente solo se il sito è servito via HTTPS. In locale (MAMP su HTTP) il banner non appare ma il manifest e il service worker sono comunque attivi e verificabili in Chrome DevTools.

Come funziona offline

Tipo di risorsaStrategia
Pagine HTML (/, /camere, /eventi, /contatti, /accesso)Network-first: prende la versione aggiornata dalla rete; se offline usa la cache
CSS, JS, immaginiCache-first: usa la versione in cache per velocità; scarica in background se assente
Chiamate admin / AJAX / wp-loginEscluse dalla cache — sempre rete diretta

Verifica PWA con Chrome DevTools

Apri il sito in Chrome → tasto destro → Ispeziona
Tab Application → sezione Manifest → verifica nome, icone e colori
Sezione Service Workers → controlla che il service worker sia attivo
Link rapidi dall'admin: manifest.json  ·  sw.js
⚠️ Ogni volta che aggiorni la versione del plugin o cambi le impostazioni, il service worker si aggiorna automaticamente al prossimo accesso. Se le modifiche non si vedono subito, vai in Chrome DevTools → Application → Service Workers → clicca Update.

Shortcut app — accesso rapido dal launcher

Il manifest include due shortcut che appaiono tenendo premuta l'icona dell'app su Android:

ShortcutDestinazione
Prenota/camere — lista camere con date
Le mie prenotazioni/area-riservata — dashboard cliente

26

Recensioni clienti

⭐ Solo chi ha soggiornato può recensire

Il plugin Hotel Recensioni permette ai clienti con prenotazioni "completate" di lasciare una recensione con voto, titolo e testo. Ogni recensione va approvata dall'admin prima di essere visibile.

Flusso cliente

Il cliente accede ad /area-riservata e trova il pulsante ⭐ Recensisci accanto alle prenotazioni completate
Compila il modal: stelle (1–5), titolo e testo libero
La recensione viene inviata con stato in attesa — l'admin riceve un'email HTML con link diretto alla moderazione

Flusso admin

Vai su Hotel Elegance → Recensioni — lista con filtri per stato
Clicca Approva per pubblicarla o Elimina per rimuoverla
Le ultime 3 approvate appaiono automaticamente nella home page (sezione "Cosa dicono i nostri Clienti")

Shortcode

Usa [hotel_recensioni] nella pagina /recensioni-ospiti per mostrare tutte le recensioni approvate con filtro per stelle.

Se non ci sono ancora recensioni approvate, la home page mostra 3 testimonianze statiche di fallback.

27

Pacchetti

I pacchetti sono offerte speciali che il cliente può aggiungere alla prenotazione. Ogni pacchetto ha un nome, descrizione, prezzo e tipo di calcolo.

Tipi di prezzo pacchetto

TipoCome si calcola
fissoPrezzo unico indipendente da notti e ospiti
nottePrezzo × numero di notti
personaPrezzo × numero di ospiti

Pacchetti predefiniti

PacchettoPrezzoTipo
🌹 Romantico€ 89fisso — fiori, bollicine, late check-out
👨‍👩‍👧‍👦 Famiglia€ 25notte — kit bambini, culla, parco giochi
💼 Business€ 45fisso — transfer, colazione 6:00, sala riunioni
🧖 Benessere€ 120fisso — 2 accessi spa, massaggio coppia

Gestione admin

Hotel Elegance → Pacchetti → aggiungi, modifica o elimina pacchetti
Ogni pacchetto: nome, descrizione, prezzo, tipo (fisso/notte/persona), attivo/non attivo

Dove appaiono

DoveCome
Form prenotazione cameraAccordion "🎁 Pacchetti" — selezione radio, prezzo aggiunto al totale in tempo reale
Pagina /pacchettiShortcode [hotel_pacchetti] — griglia card con CTA "Prenota con questo pacchetto →"
Il link "Prenota con questo pacchetto" passa il parametro ?pacchetto_id=X all'URL della camera, pre-selezionando il pacchetto nel form.

28

Servizi & Ristorante

Prenotazione ristorante

Dalla pagina /servizi, cliccando sul servizio Ristorante, appare il form di prenotazione inline con:

CampoNote
Datamin = oggi
TurnoPranzo o Cena
Numero persone1–20
Nome, email, telefono, note

Prima di confermare, il form controlla via AJAX i posti disponibili per il turno selezionato (max coperti − prenotazioni già confermate/in attesa).

Gestione admin ristorante

Hotel Elegance → Ristorante — lista prenotazioni con filtri per stato
Filtra per: Tutte / In attesa / Confermate / Cancellate
Clicca Conferma o Annulla — email automatica al cliente

Widget KPI dashboard

In cima alla dashboard compare un card arancione "🍽️ Rist. questa settimana" con il totale prenotazioni Lunedì–Domenica e la suddivisione per giorno e turno. Il widget è attivabile/disattivabile con il pulsante "Widget Ristorante ON/OFF" in testa alla dashboard — la preferenza viene salvata e persiste.


29

Punti fedeltà

🏅 Silver · Gold · Platinum — sconti automatici

Il programma premia i clienti più fedeli con punti accumulabili e livelli che sbloccano sconti automatici sul prezzo del soggiorno.

Livelli e soglie

LivelloPunti minimiSconto
🏨 Ospite00%
🥈 Silver1005%
🥇 Gold50010%
💎 Platinum100015%

Come si guadagnano i punti

EventoPunti
Ogni notte di soggiorno completata+10 punti/notte
Prima prenotazione completata+50 punti (bonus una tantum)
Compleanno+100 punti (automatico ogni anno via cron + email di auguri con coupon)
Referral — amico che prenotaPunti configurabili nel plugin Referral
Il cron giornaliero controlla i compleanni e assegna i punti una sola volta per anno. Richiede che la data di nascita sia compilata nel profilo cliente (area riservata).

Backend

Hotel Elegance → Punti Fedeltà: lista movimenti per utente con tipo, punti e data. È possibile aggiungere o sottrarre punti manualmente.


30

Calendario disponibilità

Prenotazioni → Disponibilità (oppure Hotel Elegance → Calendario) — visualizzazione FullCalendar interattiva con tutte le prenotazioni per camera.

ColoreSignificato
VerdePrenotazione confermata
GialloIn attesa di conferma
RossoCancellata
BluCompletata

Clicca su un evento nel calendario per vedere i dettagli della prenotazione. Usa i filtri per camera per concentrarti su una sola unità.


31

Channel Manager (iCal)

🔄 Sincronizzazione bidirezionale con le OTA

Il plugin Hotel Channel esporta le disponibilità in formato iCal e importa i blocchi dalle OTA, evitando doppie prenotazioni tra il tuo sito e piattaforme esterne.

Export iCal (dal sito verso OTA)

Ogni camera ha un URL iCal univoco nel formato:

https://www.ecommercestore.it/hotel/hotel-ical/camera_id.ics

Incolla questo URL nel pannello di Booking.com / Airbnb / Expedia come "Calendario da sincronizzare". Le prenotazioni confermate vengono bloccate automaticamente.

Import iCal (da OTA verso il sito)

Hotel Elegance → Channel Manager → aggiungi un canale
Seleziona camera, incolla l'URL iCal del canale esterno (es. Booking.com → Availability → Export Calendar)
Il sistema sincronizza periodicamente e crea blocchi nella tabella hotel_channel_blocchi
⚠️ I blocchi importati da OTA non creano prenotazioni reali — appaiono nel calendario come giorni bloccati ma non generano email né storico cliente.

32

Online Check-in

Il plugin Hotel Checkin invia automaticamente un'email al cliente 3 giorni prima del check-in con un link sicuro per completare il pre-arrivo.

Flusso

Il cron giornaliero cerca prenotazioni con check-in = oggi + 3 giorni (stato confermata)
Invia email con link sicuro (token univoco) → il cliente apre la pagina, compila il form (nome, cognome, documento, numero ospiti, note)
I dati vengono salvati e il task check-in è marcato come completato

Backend

Hotel Elegance → Check-in Online: lista dei check-in con stato (in attesa / completato), data e dati inseriti dal cliente. È possibile inviare il link manualmente per qualsiasi prenotazione.

In locale (MAMP) l'email con il link appare nell'inbox simulata di Hotel Mailer.

33

Servizi Extra upsell

Il plugin Hotel Extra permette di creare un catalogo di servizi aggiuntivi (diverso dai "Servizi" CPT) da proporre ai clienti durante la prenotazione.

DifferenzaHotel Servizi (cap. 28)Hotel Extra (cap. 33)
GestioneCustom Post Type "Servizio"Tabella dedicata admin
VisibilitàHome, pagina servizi, form prenotazioneForm prenotazione (upsell al momento del pagamento)
Shortcode[hotel_servizi][hotel_extra_selector booking_id="X"]

Gestione admin

Hotel Elegance → Servizi Extra: aggiungi extra (nome, descrizione, prezzo, unità), abilita/disabilita. Gli extra selezionati vengono salvati in wp_hotel_booking_extra e sommati al totale.


34

Fattura e ricevuta

Il plugin Hotel Fattura genera una ricevuta HTML stampabile per ogni prenotazione completata. La ricevuta include dati hotel, dati cliente, riepilogo soggiorno e totale.

Come accedere

DaCome
Area riservata clientePulsante 📄 Ricevuta accanto alle prenotazioni completate → apre la pagina di stampa
Backend adminHotel Elegance → Fatturazione: configura dati intestazione (ragione sociale, P.IVA, indirizzo, logo)

Impostazioni

Hotel Elegance → Fatturazione → Impostazioni: ragione sociale, indirizzo, P.IVA/CF, email, logo, note legali in fondo alla ricevuta.

La ricevuta è in HTML puro — il cliente può stamparla o salvarla come PDF dal browser con Ctrl+P → "Salva come PDF".

35

Gift Card digitali

🎁 Regala un soggiorno — codice univoco via email

Il plugin Hotel Gift Card permette di creare e vendere gift card digitali. Il destinatario riceve un codice via email da inserire al momento della prenotazione per scalare il valore dalla camera.

Flusso acquisto

Shortcode [hotel_giftcard] nella pagina dedicata — il cliente compila: importo, nome/email destinatario, messaggio
Viene generato un codice univoco (es. GIFT-ABCD-1234) e inviato via email al destinatario
Il destinatario inserisce il codice nel form di prenotazione → il valore viene scalato dal totale

Gestione admin

Hotel Elegance → Gift Card: lista tutte le card (codice, importo, usata/non usata, data scadenza, prenotazione di riscatto). Possibilità di creare gift card manualmente.

StatoDescrizione
AttivaNon ancora utilizzata
RiscattataUsata in una prenotazione
ScadutaData scadenza superata

36

Housekeeping

🧹 Board Kanban per la gestione pulizie

Il plugin Hotel Housekeeping gestisce le pulizie camere con una board visuale e crea automaticamente task di pulizia per ogni camera con check-out del giorno.

Flusso automatico

Il cron giornaliero controlla i check-out del giorno e crea un task per ogni camera
Il task appare nella board con stato Da pulire
Lo staff trascina la card → In puliziaPulitaIspezione

Stati camera

Da pulireCheck-out avvenuto, camera da preparare
In puliziaPulizia in corso — assegnata al personale
PulitaPronta per il prossimo ospite
IspezioneIn verifica qualità prima del check-in

Hotel Elegance → Housekeeping: board completa + lista personale (configurabile). I task passati rimangono nello storico.


37

Log attività

Hotel Elegance → Log Attività: registro cronologico di tutte le azioni rilevanti nell'admin — chi ha fatto cosa e quando.

Cosa viene registrato

EventoEsempio
Cambio stato prenotazione"Admin ha cambiato prenotazione #12 da in_attesa a confermata"
Creazione/modifica camera"Admin ha pubblicato la camera Suite Panoramica"
Assegnazione punti fedeltà"100 punti compleanno assegnati a Mario Rossi"
Approvazione recensione"Recensione #5 approvata da Admin"
Invio email"Email inviata a 45 iscritti newsletter"

I log includono: data/ora, tipo evento, descrizione, ID oggetto, utente admin.

Utile per audit e per ricostruire cosa è successo in caso di errori o comportamenti inattesi.

38

Programma Referral

Il plugin Hotel Referral assegna a ogni cliente un codice referral personale (es. REF-MARIO-A3K2). Chi porta un nuovo cliente che effettua una prenotazione riceve punti fedeltà bonus.

Come funziona

Il cliente trova il suo codice referral nell'area riservata → lo condivide con amici
L'amico si registra usando il codice referral nel form di registrazione
Quando l'amico completa la prima prenotazione, il referrer riceve i punti bonus configurati

Gestione admin

Hotel Elegance → Referral: lista codici, chi ha referenziato chi, prenotazioni generate, punti assegnati. Configura i punti bonus per referral da questa pagina.


39

Recensioni Google & TripAdvisor

Il plugin Hotel Reviews Widget mostra le recensioni esterne direttamente nel sito, aumentando la fiducia dei visitatori.

Google Reviews

Ottieni una Google Places API Key da console.cloud.google.com (abilita Places API)
Trova il Place ID del tuo hotel su developers.google.com/maps/documentation/places/web-service/place-id
Hotel Elegance → Recensioni Widget → inserisci API Key e Place ID → Salva
Le recensioni vengono scaricate e memorizzate in cache per 24h

TripAdvisor

Inserisci l'URL della tua pagina TripAdvisor nelle impostazioni. Il widget mostra il rating medio e un link diretto alle recensioni (TripAdvisor non fornisce API pubbliche gratuite per il testo delle recensioni).

Shortcode

[hotel_reviews_widget source="google" limit="5"] — mostra le ultime N recensioni Google con stelle, testo e autore. Usa source="tripadvisor" per il widget TripAdvisor.


40

Stripe Pagamenti

💳 Deposito reale online — 30% del totale

Il plugin Hotel Stripe aggiunge un'opzione di pagamento reale tramite Stripe Checkout. Il cliente paga un deposito (default 30%) e il saldo viene pagato all'hotel all'arrivo.

⚠️ Questo è un pagamento reale — richiede un account Stripe e non è compatibile con le carte di test del cap. 7 che funzionano solo con il pagamento simulato.

Configurazione

Crea un account su stripe.com → Dashboard → Developer → API keys
Copia la Publishable key e la Secret key (usa le chiavi "test" per sviluppo)
Hotel Elegance → Pagamenti Stripe → incolla le chiavi, imposta la percentuale del deposito (default 30%), Salva
Il bottone "Paga deposito con Stripe" appare nell'area riservata per le prenotazioni in attesa

Flusso cliente

Il cliente prenota normalmente — prenotazione in stato "in attesa"
Nell'area riservata clicca "Paga deposito" → viene reindirizzato a Stripe Checkout
Dopo il pagamento, la prenotazione passa a "confermata" automaticamente
Con le chiavi Stripe in modalità "test" usa le carte di test Stripe (es. 4242 4242 4242 4242) — diverse dalle carte simulate del sistema di prenotazione base.

41

Lista d'attesa

Se una camera non è disponibile per le date selezionate, il cliente può iscriversi alla lista d'attesa. Quando la camera torna disponibile (prenotazione cancellata), riceve un'email automatica.

Flusso

Il cliente seleziona le date — se la camera risulta occupata appare il form di lista d'attesa (shortcode [hotel_waitlist camera_id="X"])
Inserisce nome ed email → viene aggiunto alla coda per quelle date
Quando una prenotazione per quella camera e quelle date viene cancellata, il primo in lista riceve un'email con link diretto alla prenotazione

Gestione admin

Hotel Elegance → Lista d'attesa: lista per camera con nome, email, date richieste, stato (in attesa / notificato). Possibilità di notificare manualmente o rimuovere iscrizioni.

L'email di notifica include un link diretto alla pagina della camera con le date pre-compilate. Il link è valido per 24h per scoraggiare la speculazione sulla disponibilità.

42

Prenotazioni multi-canale e integrazione PMS

🏨 Desk · 📞 Telefono · 🌐 Web · 🔗 OTA · 🎭 Evento

Tutte le prenotazioni — indipendentemente dal canale di origine — scrivono sulla stessa tabella e aggiornano la disponibilità in tempo reale. Il campo canale traccia la provenienza.

Canali disponibili

BadgeCanaleOrigine
🌐 WebwebPrenotazione dal sito (form frontend)
🏨 DeskreceptionForm admin "Nuova Prenotazione" — operatore alla reception
📞 TeltelefonoForm admin "Nuova Prenotazione" — prenotazione telefonica
🔗 OTAotaREST API — PMS o OTA esterna (Booking.com, ecc.)
🎭 EventoeventoForm prenotazione evento

Scenario A — Form admin "Nuova Prenotazione"

Prenotazioni → + Nuova Prenotazione: permette agli operatori di inserire prenotazioni per conto di ospiti (desk o telefono).

Inserisci l'email dell'ospite — se esiste già un account viene trovato automaticamente; se è nuovo viene creato un utente WordPress e inviata la welcome email
Seleziona camera, date, tipologia, numero ospiti
Scegli canale (Desk / Telefono) e stato iniziale (Confermata / In attesa)
Aggiungi note interne (non visibili all'ospite) e spunta "Invia email conferma" se necessario
Salva — la disponibilità viene verificata server-side prima dell'inserimento
Il collegamento con la carta fedeltà avviene tramite email: se l'ospite si registra online con la stessa email, i punti si sommano automaticamente allo stesso account.

Scenario B — REST API per PMS esterno

Permette a un PMS esterno di interrogare la disponibilità e creare prenotazioni via HTTP.

EndpointMetodoDescrizione
/wp-json/hotel/v1/disponibilitaGETLista camere con disponibile (bool), camere_libere, prezzo_notte, prezzo_totale, notti. Parametri: check_in, check_out
/wp-json/hotel/v1/bookingPOSTCrea prenotazione. Body JSON: guest_email, guest_name, camera_id, check_in, check_out (+ n_ospiti, tipologia_id, canale, note, prezzo_totale opzionali)

Autenticazione: header X-Hotel-Api-Key: {chiave}. La chiave si genera da Prenotazioni → Impostazioni → REST API.

⚠️ Il REST endpoint è disabilitato finché non viene generata una API key. Non è possibile creare prenotazioni senza autenticazione.

Scenario C — Webhook outbound (WordPress → PMS)

Ad ogni evento di prenotazione rilevante, WordPress notifica automaticamente il PMS esterno con un POST HTTP firmato.

Evento webhookQuando scatta
createdNuova prenotazione (qualsiasi canale)
confirmedStato → confermata
cancelledStato → cancellata
completedStato → completata
pendingStato → in attesa

Configurazione: Prenotazioni → Impostazioni → Webhook verso PMS. Ogni richiesta include l'header X-Hotel-Webhook-Signature: sha256=HMAC per la verifica lato PMS.

Il webhook è non-bloccante (fire-and-forget): non rallenta l'esperienza dell'ospite. Il payload contiene booking_id, canale, stato, dati ospite, camera, date, prezzo e timestamp ISO8601.

43

Punti fedeltà — aggiornamenti

Aggiornamenti al plugin Hotel Fidelity (v1.1.0). Vedi il capitolo base al capitolo 29.

Impostazioni configurabili da admin

Hotel Elegance → Punti Fedeltà → Impostazioni programma: tutti i parametri sono ora configurabili senza toccare il codice.

ParametroDefaultDescrizione
Punti per notte10Punti accreditati per ogni notte di soggiorno completata
Bonus prima prenotazione50Punti extra alla prima prenotazione completata
Bonus compleanno100Punti accreditati ogni anno nel giorno del compleanno
Silver — soglia / sconto100 pt / 5%Soglia punti e % di sconto per il livello Silver
Gold — soglia / sconto500 pt / 10%Soglia punti e % di sconto per il livello Gold
Platinum — soglia / sconto1000 pt / 15%Soglia punti e % di sconto per il livello Platinum

Pagina pubblica del programma

Shortcode [hotel_fidelity_programma]: inseriscilo in qualsiasi pagina WordPress per mostrare ai visitatori la tabella dei livelli, come guadagnare punti e le regole del programma.

Correzioni apportate

BugSintomoCorrezione
Punti mai assegnatiCompletare una prenotazione non accreditava puntiAggiunto do_action('hb_booking_stato_changed') mancante in hb_admin_page()
Sconto mai applicatoOspiti Silver/Gold/Platinum pagavano prezzo pienoAggiunto apply_filters('hb_prezzo_totale_filter') in hb_ajax_create_booking()
Tabella utenti vuotaNessun ospite compariva nella pagina Punti FedeltàQuery riscritta su wp_users + wp_hotel_prenotazioni invece di wp_hotel_utenti

📌 Riferimento rapido — percorsi admin

Cosa farePercorso backend
Aggiungere cameraCamere → Aggiungi Camera
Aggiungere servizioServizi Hotel → Aggiungi Servizio
Aggiungere eventoEventi → Aggiungi Evento
Prezzi base camereCamere → modifica → meta box "Dettagli Camera"
Prezzi stagionaliPrenotazioni → Prezzi Stagionali
Formule di soggiornoPrenotazioni → Tipologie di Prezzo
PrenotazioniPrenotazioni
Calendario disponibilitàPrenotazioni → Disponibilità
Clienti registratiPrenotazioni → Utenti Hotel
Ore cancellazionePrenotazioni → Impostazioni
Iscritti newsletterNewsletter
Testo modal newsletterNewsletter → Impostazioni
Inbox email simulataMailer Hotel → Inbox
Invia email a utenti/newsletterMailer Hotel → Invia Email
Attiva/disattiva modalità localeMailer Hotel → Impostazioni
Menu navigazioneAspetto → Menu
Footer widgetAspetto → Widget
Sfondo home / stelleAspetto → Personalizza
Email SMTP (produzione)WP Mail SMTP → Impostazioni
Aggiorna regole URLImpostazioni → Permalink → Salva modifiche
Accesso backend/wp-admin — mai tramite /accesso
Plugin privacy GDPRPlugin → Aggiungi nuovo → "GDPR Cookie Consent"
Privacy Policy / Cookie PolicyGenerata automaticamente dal plugin GDPR Cookie Consent
Impostazioni PWA (manifest, icone, colori)Hotel PWA
Caricare nuovo logo appHotel PWA → campo "Icona app" → Salva
Rigenera icone PWAHotel PWA → spunta "Rigenera icone" → Salva
Verifica manifest e service workerHotel PWA → link diretti manifest.json / sw.js
Nuove funzionalità
Recensioni clienti (approva/elimina)Hotel Elegance → Recensioni
Pacchetti (aggiungi/modifica)Hotel Elegance → Pacchetti
Prenotazioni ristoranteHotel Elegance → Ristorante
Widget KPI ristorante settimanaDashboard → pulsante "Widget Ristorante ON/OFF"
Punti fedeltà (storico/assegna)Hotel Elegance → Punti Fedeltà
Programma referralHotel Elegance → Referral
Gift card (crea/gestisci)Hotel Elegance → Gift Card
Calendario visuale disponibilitàHotel Elegance → Calendario
Channel manager / iCal sync OTAHotel Elegance → Channel Manager
Online check-in (lista / invia manuale)Hotel Elegance → Check-in Online
Servizi extra upsellHotel Elegance → Servizi Extra
Impostazioni fattura/ricevutaHotel Elegance → Fatturazione
Housekeeping (board Kanban)Hotel Elegance → Housekeeping
Log attività adminHotel Elegance → Log Attività
Recensioni Google/TripAdvisorHotel Elegance → Recensioni Widget
Stripe (chiavi API e deposito %)Hotel Elegance → Pagamenti Stripe
Lista d'attesa camereHotel Elegance → Lista d'attesa
Nuova prenotazione da desk/telefonoPrenotazioni → + Nuova Prenotazione
REST API key (per PMS esterno)Prenotazioni → Impostazioni → REST API
Webhook verso PMS (URL + secret)Prenotazioni → Impostazioni → Webhook verso PMS
Impostazioni punti fedeltà (soglie/sconti)Hotel Elegance → Punti Fedeltà → Impostazioni programma
Pagina pubblica programma fedeltàShortcode [hotel_fidelity_programma] su qualsiasi pagina
hotel  ·  Manuale del sito v2.1 — 43 capitoli  ·  Per assistenza tecnica contatta lo sviluppatore del tema.