WNfo

Espace membre

Inscription, connexion sécurisée et tableau de bord — table users partagée, sessions PHP, anti force-brute.

MembresAuthCompteLogin

Installation & utilisation

Espace membre

Module d’authentification pour votre CMS (marque blanche). Gratuit & open source (MIT).

Prérequis

  • CMS WNFO / CMS nu déjà installé (install.php terminé)
  • PHP avec sessions activées
  • Le cœur CMS doit inclure ModuleRuntime (versions récentes du CMS nu)

Instructions

Option A

Admin (recommandé)

  1. Téléchargez le ZIP Espace membre depuis le catalogue.
  2. Admin → Modules → Installer via ZIP → choisissez le fichier → Installer.
  3. Rechargez le site : le header doit proposer Connexion / Inscription.

Option B

ZIP déposé dans `/modules/`

  1. Uploadez member-space.zip (sans le dézipper) dans le dossier /modules/ en FTP.
  2. Admin → Modules → Synchroniser les modules (extraction automatique).
  3. Le dossier /modules/member-space/ est créé ; le .zip est supprimé après install.

Option C

Dossier décompressé (FTP classique)

  1. Décompressez l’archive : vous obtenez le dossier member-space/.
  2. Uploadez-le dans /modules/member-space/ (avec module.json + bootstrap.php).
  3. Admin → Modules → Synchroniser.

Pages du module

URLRôle
/member/registerInscription (pseudo, email, mot de passe)
/member/loginConnexion (email ou pseudo)
/member/logoutDéconnexion
/member/accountTableau de bord (réservé aux connectés)
/member/dashboardAlias de /member/account

Base de données

Oui — réutilise la table users du CMS (pas de seconde table dédiée).

ÉlémentDétail
Tableusers (déjà créée par le CMS)
Colonneusername (ajoutée par le cœur CMS si besoin)
Rôlenouveaux comptes → member
Mot de passepassword_hash (PHP)
Sessionsession membre séparée de l’admin

Aucune migration SQL manuelle à lancer : le CMS gère la colonne username au démarrage.

Un membre ne peut pas ouvrir l’admin.

Sécurité

  • Protection CSRF sur les formulaires
  • Limitation des tentatives de connexion (anti force-brute)
  • Pages compte protégées : visiteur non connecté → redirection vers /member/login

Header du thème

Si votre thème appelle render_member_nav() (thème default inclus) :

  • Invité → boutons *Connexion* / *Inscription*
  • Connecté → *Mon compte* / *Déconnexion*

Sur un thème custom, ajoutez dans le header :

<?php render_member_nav(); ?>

Vérification rapide

  1. Ouvrir /member/register → créer un compte test
  2. Vérifier la redirection vers /member/account
  3. Se déconnecter, puis se reconnecter via /member/login
  4. Contrôler en Admin → Utilisateurs que le compte apparaît avec le rôle member

Dans le ZIP

Guide aussi fourni dans le ZIP (INSTALLATION.md). Dossier cible : /modules/member-space/ — n’écrase pas le thème.

Licence

Le CMS et tous ses thèmes sont entièrement gratuits et open source, sans aucune version payante ni restriction de licence.