Définition du Projet

Prérequis : PHP, Framework MVC Yii2 est un plus

Objectif

Créer un site de documentation professionnel pour Blackcube CMS qui démontre les capacités du CMS en situation réelle.

Ce projet sert deux objectifs :

  1. Vitrine technique : Démonstration concrète des capacités Blackcube
  2. Cas d'usage réel : Exemple d'implémentation complète et fonctionnelle

Info

Ce guide présente des exemples d'architecture et d'utilisation. Blackcube n'impose rien : adapte les structures, widgets et approches selon les besoins de ton projet. Le développeur reste maître de son code et de ses choix.

Public Cible

  1. Évaluer Blackcube CMS pour leurs projets
  2. Comprendre comment structurer un projet Blackcube
  3. Voir un exemple concret d'implémentation
Développeurs cherchant à :

Stack Technique

  1. Yii2 (PHP 8.3+)
  2. Blackcube (core + admin)
  3. MySQL 8.0 / MariaDB 10.11
Backend :

  1. Tailwind CSS v4
  2. Vanilla JS
  3. Heroicons (SVG)
Frontend :

Fonctionnalités Démontrées

Structure de Contenu

  1. 9 BlocTypes avec JSON Schema
  2. 5 Types de pages
  3. Templates d'admin personnalisés
BlocTypes et Types :

  1. Nodes (Rubriques)
  2. Composites (Articles)
  3. Relations parent/enfant
Arborescence :

Multilingue

  1. Structure FR/EN parallèle
  2. Language switcher
  3. Balises hreflang automatiques

SEO

  1. Configuration complète par élément
  2. Sitemap XML
  3. URLs propres

Navigation

  1. Sidebar hiérarchique
  2. Breadcrumb automatique
  3. TOC extraite des titres
  4. Navigation prev/next

Administration

  1. Paramètres centralisés
  2. Menus configurables
  3. Interface de saisie personnalisée

Livrables

Configuration Back-Office

  1. 9 BlocTypes configurés
  2. 5 Types de contenu
  3. Paramètres centralisés
  4. Menus (header/footer FR/EN)
  5. Arborescence complète

Code PHP

  1. Helpers (Parameters, CmsHelper)
  2. Controllers (Cms, Redirect)
  3. Behavior (HrefLang)
  4. Modèle (MailContact)
  5. Widgets de blocs et de layout
  6. Vues
  7. Templates d'admin

Contenu

  1. Pages d'accueil (FR/EN)
  2. Pages contact (FR/EN)
  3. Articles de documentation

Structure du Site

Arborescence

    / (Redirect Language)
├── /fr (Home FR)
│   ├── /fr/guide (Documentation FR)
│   │   └── /fr/guide/* (Articles)
│   ├── /fr/a-propos (À propos FR)
│   │   └── /fr/a-propos/* (Articles)
│   └── /fr/contact (Contact FR)
│
└── /en (Home EN)
    ├── /en/guide (Documentation EN)
    │   └── /en/guide/* (Articles)
    ├── /en/about (About EN)
    │   └── /en/about/* (Articles)
    └── /en/contact (Contact EN)
    

Types de Pages

  1. Type : Home
  2. Layout : Header + Hero + Features + CTA + Footer
Page d'accueil :

  1. Type : Documentation
  2. Layout : Header + Sidebar + Contenu + TOC + Footer
Pages de documentation :

  1. Type : Contact
  2. Layout : Header + Hero + Formulaire + Sidebar + Footer
Page de contact :

Flexibilité Architecturale

  1. Widgets réutilisables
  2. Code direct dans les vues
  3. Approche mixte
L'approche widgets/dispatcher présentée est UN exemple. Chaque projet peut avoir sa propre architecture :

Info

Blackcube ne force aucune structure particulière.

Validation

  1. Objectif du projet compris
  2. Stack technique validée
  3. Fonctionnalités à démontrer identifiées
Avant de continuer :