Skip to content

Un sistema di autenticazione moderno, sicuro e user-friendly per proteggere le tue pagine WordPress con una password condivisa.

License

Notifications You must be signed in to change notification settings

florin88/Simple-Page-Authentication

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Simple Page Authentication per WordPress - v3.0 πŸš€

Plugin WordPress per la protezione delle pagine con password

Un sistema di autenticazione moderno, sicuro e user-friendly per proteggere le tue pagine WordPress con una password condivisa. Design completamente rinnovato con animazioni fluide e interfaccia professionale.

🎨 Novità del Design v3.0

Interfaccia Completamente Ridisegnata

  • Form di Login Ultra-Moderno: Gradients, ombre morbide, animazioni fluide
  • Pannello Admin Elegante: Cards moderne, colori vivaci, esperienza utente migliorata
  • Animazioni Professionali: Transizioni smooth, feedback visivi immediati
  • Dark Mode Ready: Supporto tema scuro (Easter Egg: Konami Code)
  • Mobile First: Completamente responsive e touch-friendly

Esempi Visivi

  • Login Form: Design glassmorphism con sfumature viola/blu
  • Pulsanti: Hover effects con trasformazioni 3D
  • Notifiche: Toast notifications moderne con auto-dismiss
  • Form Controls: Switch e checkbox personalizzati stile iOS

✨ Caratteristiche Principali

πŸ” Sicurezza di Livello Enterprise

  • Password Hashing: Utilizzo di bcrypt per storage sicuro (NO password in chiaro)
  • Anti Brute-Force: Blocco automatico dopo X tentativi falliti
  • Cookie Sicuri: Token randomizzati per sessioni "Ricordami"
  • Invalidazione Sessioni: Force logout di tutti gli utenti con un click
  • Notifiche di Sicurezza: Alert email per attivitΓ  sospette

🎯 Sistema di Redirect Intelligente

Il plugin gestisce 3 scenari diversi in modo automatico e preciso:

Scenario A: Accesso da Pagina Protetta

Visitatore β†’ Clicca "Portfolio Clienti" (protetta)
           β†’ Redirect automatico al login
           β†’ Inserisce password
           β†’ βœ… Ritorna a "Portfolio Clienti"

Scenario B: Login Diretto

Visitatore β†’ Va su /area-riservata-login
           β†’ Inserisce password
           β†’ βœ… Va all'Area Riservata configurata

Scenario C: Utente GiΓ  Autenticato

Utente con sessione β†’ Clicca pagina protetta
                    β†’ βœ… Accesso immediato

πŸ›‘οΈ Protezione Avanzata

  • Limite Tentativi: Configurabile (default: 5)
  • Durata Blocco: Configurabile (default: 5 minuti)
  • Countdown Visivo: Timer durante il blocco
  • IP Tracking: Monitoraggio tentativi per indirizzo IP
  • Log Dettagliati: Registro completo di tutti gli accessi

πŸ“¦ Installazione

Requisiti Minimi

  • WordPress 5.0+
  • PHP 7.2+
  • MySQL 5.6+

Installazione Rapida

  1. Scarica simple-page-auth-v3-it.zip
  2. WordPress Admin β†’ Plugin β†’ Aggiungi nuovo
  3. Clicca Carica plugin
  4. Seleziona il file ZIP
  5. Installa ora β†’ Attiva

βš™οΈ Configurazione

1. Accedi al Pannello

WordPress Admin β†’ Page Auth

2. Imposta la Password

  • Inserisci una password sicura (minimo 12 caratteri)
  • L'indicatore di forza ti guiderΓ  in tempo reale
  • Mix di maiuscole, minuscole, numeri e simboli

3. Configura l'Area Riservata Principale

  • Seleziona la pagina dove indirizzare gli utenti dopo il login diretto
  • Questa sarΓ  la "home" della tua area riservata

4. Seleziona le Pagine da Proteggere

  • Usa la barra di ricerca per trovare rapidamente le pagine
  • Seleziona/deseleziona tutto con un click
  • Contatore in tempo reale delle pagine protette

5. Configura le Opzioni di Sicurezza

Impostazione Default Range Descrizione
Max tentativi 5 3-10 Tentativi prima del blocco
Durata blocco 300s 60-3600s Tempo di attesa dopo il blocco
Ricordami 30 giorni 1-365 Durata cookie persistente
Email notifiche Admin email - Dove inviare gli alert

🎨 Il Nuovo Design Moderno

Form di Login

Il form di login presenta un design all'avanguardia con:

  • Header Gradiente: Sfumatura viola/blu con icona lucchetto SVG
  • Campi Input Moderni: Bordi arrotondati, focus states colorati
  • Toggle Password: Icone SVG animate per mostra/nascondi
  • Checkbox Personalizzato: Stile iOS con animazioni smooth
  • Pulsante Submit: Gradient con hover 3D effect
  • Footer Sicurezza: Indicatore connessione sicura

Pannello Amministrativo

  • Header Hero: Banner gradiente con titolo grande
  • Cards Contenuto: Sezioni in cards bianche con ombre
  • Tabelle Moderne: Bordi arrotondati, hover effects
  • Pulsanti Stilizzati: Gradient, ombre, animazioni
  • Indicatori Visivi: Badge colorati, progress bars

Animazioni e Transizioni

  • Fade In/Out: Transizioni morbide per elementi
  • Slide Animations: Notifiche che scivolano
  • Pulse Effects: Pulsazioni per attirare attenzione
  • Shake on Error: Scuotimento form per errori
  • Scale on Hover: Ingrandimento al passaggio mouse

πŸ”§ Utilizzo

Shortcode per Form Personalizzato

Inserisci il form di login dove vuoi:

[spa_login_form]

Esempio di Pagina Login Personalizzata

<h2>Benvenuto nell'Area Clienti</h2>
<p>Accedi con le tue credenziali per visualizzare i contenuti riservati.</p>

[spa_login_form]

<hr>
<p><small>Hai bisogno di assistenza? Contatta support@tuosito.it</small></p>

URL Importanti

  • Pagina Login: https://tuosito.it/area-riservata-login
  • Area Riservata: La pagina che configuri come principale

🎯 Funzionalità Avanzate

Toggle Password Visibility

  • Click sull'icona occhio per mostrare/nascondere la password
  • Animazione smooth tra le icone
  • Aria labels per accessibilitΓ 

Indicatore Caps Lock

  • Avviso automatico quando Caps Lock Γ¨ attivo
  • Previene errori di digitazione password

Countdown Lockout

  • Timer visivo durante il blocco per troppi tentativi
  • Auto-refresh quando il timer scade
  • Animazione pulsante negli ultimi 10 secondi

Ricordami Intelligente

  • Salva preferenza utente in localStorage
  • Cookie sicuro con hash randomizzato
  • Invalidazione automatica al cambio password

Keyboard Shortcuts

  • CTRL+L: Focus immediato sul campo password
  • ESC: Pulisce il form
  • Enter: Submit del form

Easter Egg: Dark Mode

  • Digita il Konami Code: ↑↑↓↓←→←→BA
  • Attiva/disattiva il tema scuro

πŸ“Š Log e Monitoraggio

Tipi di Eventi Tracciati

  • βœ… Login Riusciti: Con timestamp e IP
  • ❌ Login Falliti: Con conteggio tentativi
  • πŸ”„ Redirect: Tracciamento navigazione
  • πŸ” Cambio Password: Log modifiche admin
  • πŸͺ Cookie Auth: Autenticazioni via "Ricordami"

Gestione Log

  • Visualizzazione tabellare ordinata
  • Pulizia con un click
  • Export ready per analisi
  • Limite automatico a 1000 entries

πŸ›‘οΈ Best Practices di Sicurezza

Password Forte

βœ… COSA FARE:

  • Minimo 12 caratteri
  • Mix di caratteri: Aa1!
  • Cambiare ogni 30-60 giorni
  • Usare un password manager

❌ COSA NON FARE:

  • Password comuni (123456, password)
  • Dati personali (nome, data nascita)
  • Stessa password ovunque
  • Condividere via email/chat

Monitoraggio

  • Controlla i log settimanalmente
  • Abilita notifiche email
  • Verifica IP sospetti
  • Aggiorna WordPress regolarmente

🎨 Personalizzazione CSS

Variabili Principali

:root {
    --spa-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --spa-success: #10b981;
    --spa-error: #ef4444;
    --spa-warning: #f59e0b;
    --spa-border-radius: 12px;
    --spa-shadow: 0 20px 60px rgba(0,0,0,0.08);
}

Esempio Tema Personalizzato

/* Tema Aziendale Blu */
#spa-login-container {
    max-width: 500px;
}

.spa-login-header {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
}

.spa-submit-button {
    background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Tema Dark Mode */
body.spa-dark-mode #spa-login-container {
    background: #1a202c;
    color: #e5e7eb;
}

body.spa-dark-mode .spa-password-wrapper input {
    background: #2d3748;
    border-color: #4a5568;
    color: white;
}

πŸ“± Responsive Design

Breakpoints

  • Mobile: < 480px
  • Tablet: 481px - 768px
  • Desktop: > 768px

Ottimizzazioni Mobile

  • Touch targets minimi 44x44px
  • Font size leggibili (min 14px)
  • Padding aumentato per touch
  • Keyboard type ottimizzato

πŸš€ Performance

Ottimizzazioni Implementate

  • CSS inline per critical path
  • JavaScript async loading
  • Animazioni GPU accelerate
  • LocalStorage per preferenze
  • Transients per cache dati

Metriche Target

  • First Paint: < 1s
  • Interactive: < 2s
  • Lighthouse Score: > 90

πŸ”§ Troubleshooting

Password Non Accettata

  • βœ“ Verifica Caps Lock
  • βœ“ Controlla spazi extra
  • βœ“ Svuota cache browser
  • βœ“ Verifica configurazione plugin

Loop di Redirect

  • βœ“ Area riservata β‰  pagina login
  • βœ“ Pagina di default pubblicata
  • βœ“ No conflitti con altri plugin
  • βœ“ Permalinks aggiornati

Troppi Tentativi Falliti

  • βœ“ Attendi tempo di blocco
  • βœ“ Admin puΓ² fare force logout
  • βœ“ Verifica IP non bloccato
  • βœ“ Controlla i log

πŸ†š Confronto Versioni

FunzionalitΓ  v1.0 v2.0 v3.0
Protezione base βœ… βœ… βœ…
Redirect intelligente ❌ βœ… βœ…
Password hashing ❌ ❌ βœ…
Anti brute-force ❌ ❌ βœ…
Design moderno ❌ ❌ βœ…
Animazioni ❌ Limited βœ…
Toggle password ❌ ❌ βœ…
Force logout ❌ ❌ βœ…
Email notifiche ❌ ❌ βœ…

πŸ“ Codice di Esempio

Verificare Autenticazione in PHP

session_start();
if (isset($_SESSION['spa_authenticated']) && $_SESSION['spa_authenticated'] === true) {
    echo "Utente autenticato!";
    // Mostra contenuti riservati
} else {
    wp_redirect('/area-riservata-login');
    exit;
}

Verificare Autenticazione in JavaScript

spaCheckAuth(function(isAuthenticated) {
    if (isAuthenticated) {
        console.log('Utente autenticato');
        // Mostra elementi riservati
        $('.contenuto-riservato').show();
    } else {
        console.log('Non autenticato');
        window.location = '/area-riservata-login';
    }
});

🀝 Supporto

Hai bisogno di aiuto?

  1. Leggi questa documentazione
  2. Controlla la sezione Troubleshooting
  3. Verifica i log del plugin
  4. Disattiva altri plugin per test

πŸ“œ Changelog

Version 3.0.x

  • πŸ› Is not a bug is a feature: qualsiasi cosa che puΓ² essere considerata un bug, mi dispiace non lo Γ¨ 😈 In realtΓ  si tratta molto probabilmente di una funzione non piΓΉ implementata per pigrizia oppure perchΓ© per il momento questa versione va benissimo cosΓ¬.

Version 3.0.x

In seguito ad alcuni test da parte mia e soprattutto di alcuni utenti che si sono affidati a questo plugin sono stati scoperti alcuni bug e alcune problematiche che sono state risolte nel minor tempo possibile.

Pannello Admin ti mostrerΓ :

  • πŸ”‘ NUOVO: Numero token "ricordami" attivi, basato anche sul dispositivo su cui Γ¨ stata avviata la sessione di login
  • πŸ“Š NUOVO: Dettagli ogni token (IP, data, scadenza)
  • πŸšͺ NUOVO: Pulsante "Disconnetti Tutti" funzionante nella pannello di controllo e impotazioni del plugin
  • πŸ“ NUOVO: Log piΓΉ dettagliati

Utenti NON noteranno differenze:

  • Login funziona identico
  • πŸ› FIX: "Ricordami" funziona meglio
  • πŸ”’ SICUREZZA: Tutto piΓΉ sicuro dietro le quinte

⚠️ È probabile che il vecchio sistema di controllo e autenticazione potesse permettere in alcune circostanze accessi non autorizzati, solo alle pegine prottete con questo plugin e non in tutto il sito. È fondamentale aggiornare il plugin e rifare le configurazioni da capo.

Versione 3.0 - Italiana (Attuale)

  • ✨ NUOVO: Interfaccia completamente ridisegnata
  • ✨ NUOVO: Password hashing con bcrypt
  • ✨ NUOVO: Sistema anti brute-force
  • ✨ NUOVO: Toggle mostra/nascondi password
  • ✨ NUOVO: Indicatore forza password
  • ✨ NUOVO: Animazioni moderne e fluide
  • ✨ NUOVO: Notifiche email configurabili
  • ✨ NUOVO: Force logout globale
  • ✨ NUOVO: Countdown visivo lockout
  • ✨ NUOVO: Copy to clipboard per URL
  • 🌍 LINGUA: Completamente in italiano
  • 🎨 DESIGN: UI/UX professionale moderna
  • πŸ› FIX: Risolti loop di redirect
  • πŸ”’ SICUREZZA: Miglioramenti generali

Versione 2.0

  • Sistema redirect intelligente
  • Area riservata configurabile
  • Log accessi base
  • Opzione ricordami

Versione 1.0

  • FunzionalitΓ  base
  • Protezione pagine
  • Login semplice

GPL v2 or later - Usa, modifica e distribuisci liberamente!

Questo progetto Γ¨ licenziato sotto la GPL v2+ - vedi il file LICENSE per i dettagli.

πŸ‘¨β€πŸ’» Autore

Flavius Florin Harabor
🌐 2088.it
πŸ’Ό Sviluppatore WordPress Freelance πŸ’Ό Consulente Web Marketing e Imperatore di Telegram

πŸ’° Donazioni

Se questo progetto ti Γ¨ stato utile per il tuo lavoro, considera una piccola donazione:

Ko-fi

Le donazioni aiutano a mantenere il progetto attivo e a sviluppare nuove funzionalitΓ !

⭐ Se ti piace il progetto

  • Lascia una stella su GitHub ⭐
  • Condividi con altri sviluppatori WordPress
  • Seguimi sui social per aggiornamenti
  • Scrivi una recensione se usi il plugin

πŸ“« Contatti

Hai domande? Vuoi collaborare? Contattami!


🏷️ Tags

wordpress simple page auth wordpress simple page auth

Simple Page Auth v3.0 - Il modo piΓΉ elegante per proteggere le tue pagine WordPress πŸš€

About

Un sistema di autenticazione moderno, sicuro e user-friendly per proteggere le tue pagine WordPress con una password condivisa.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published