
WordPress en bref
1. Présentation CMS
Content Management System (SystĂšme de gestion de contenu).
= Un CMS est une application Web qui permet de créer et gérer des sites Web sans aucune connaissance technique et qui est indépendante de tout prestataire.
â> un bon CMS : facilitĂ©, flexibilitĂ©, scalabilitĂ©
Quelques CMS : WordPress > Joomla, Magento > Shopify, Drupal, E-majine, Ez, Prestashop, Typo3, Dotclear, SpipâŠ
2 cÎtés d'un CMS :
- Le Front-end = face publique.
- Le Back-end = face cachée du site.
2. Installation du CMS WordPress
Présentation de WordPress
- WordPress est un systĂšme de gestion de contenu gratuit (SGC ou content management system (CMS) en anglais) et open-source.
- Ce logiciel libre écrit en PHP repose sur une base de données MySQL et est distribué par l'entreprise Américaine Automattic.
- Les fonctionnalités de WordPress lui permettent de créer et gérer différents types de sites Internet : Blog, site e-commerce, site vitrine ou encore portfolio.
- Il est distribué selon les termes de la licence GNU GPL version 2.
- Le logiciel est aussi Ă l'origine du service WordPress.com.
Différence entre WordPress.org et WordPress.com
wordpress.org
- Site officiel du CMS
- Téléchargement de la version open source
- ThĂšmes
- Extensions
- Documentation
- Besoin d'avoir son propre hébergeur et son nom de domaine
wordpress.com
- Plateforme d'hébergement gratuite pour les sites WordPress
- Créée, hébergée et maintenue par la société Automattic.
- Service de base gratuit puis extensions payantes
- Différentes offres: personnel, prémium et entreprise
- Maintenance réalisée par Automattic.
- Pas d'accĂšs au FTP
- Publicité
- Personnalisation limitée
La plupart des CMS fonctionnent avec un systĂšme de trois serveurs, chacun dâentre eux ayant un rĂŽle dĂ©diĂ© :
- Le serveur Web : Exemple(Apache, Nginx, IIS)
- Le serveur de base de données (MySQL, MariaDB, Oracle, Informix, SQL Server).
- Le serveur dâapplication. Le serveur le plus utilisĂ© sâappelle Apache avec le module PHP.
WAMP (ou LAMP)
Les rĂŽles de ces quatre composants sont les suivants :
- Linux ou Windows assure l'attribution des ressources aux autres composants (RĂŽle d'un SystĂšme d'exploitation ou OS pour Operating System) ;
- Apache est le serveur web « frontal » : il est « devant » tous les autres et rĂ©pond directement aux requĂȘtes du client web (navigateur) ;
- MySQL est un systÚme de gestion de bases de données (SGBD). Il permet de stocker et d'organiser des données ;
- Le langage de script PHP permet la génération de pages web dynamiques et la communication avec le serveur MySQL
Il existe plusieurs packaging qui permettent de configurer un WAMP :
- EasyPHP : http://www.easyphp.org/
- WampServer : http://www.wampserver.com/
- Xampp : https://www.apachefriends.org/fr/index.htm
Installation
Télécharger et installer WampServer : https://sourceforge.net/projects/wampserver/
On choisit la racine dâun disque (ex : C:\wamp64).
(si problĂšmes Ă la maison : https://wampserver.aviatechno.net/?lang=fr&prerequis=afficher)
â> On a accĂšs Ă localhost/phpmyadmin/ pour gĂ©rer les bases de donnĂ©es (MySQL ou MariaDB).
Dans PhpMyAdmin, on se connecte à MySQL et on crée une base de données vide (ex : hello-world-db).
Télécharger WordPress : https://fr.wordpress.org/download/#download-install
On garde le zip qui sera réutiliser à chaque nouveau projet WP.
On dézippe dans un dossier qui porte le nom du site (ex : hello-world).
On copie ce dossier dans C:\wamp64\www.
â> On a accĂšs en local au projet avec http://localhost/hello-world/.
On se connecte à la base de données précédemment créée.
On lance âlâinstallationâ.

On se connecte.
On arrive bien sur le tableau de bord du site.
3. Lâadministration du site (back office)
Tableau de bord = accueil de lâadministration
Barre dâoutils
Menus dâadministration
Ecrans dâadministration (modules)
Options de lâĂ©cran
Réglages du site
4. Les articles
Actualité chaude.
Notion d'article
Créer un article
+ possible par mail
Administrer un article
+ Ă©tats de publication (brouillon, en attente de relecture, publiĂ©âŠ)
ConnaĂźtre son workflow de publication
Classer les articles dans des catégories = obligatoire
Associer des mots-clés
+ convertir des étiquettes en mots-clés
Afficher les articles ~ selon le thĂšme choisi
Gérer les permaliens
Gérer les widgets
Sâabonner au flux RSS
5. Les pages
Actualité froide.
Notion de page
Créer une page
Administrer une page
Gérer les menus
Gérer les widgets
6. Les medias
Notion de média
Gérer les médias
Définir des tailles de médias
Référencement du média
7. La mise en forme du contenu
Mettre en forme le contenu des articles et des pages
Mettre en forme du texte au niveau des caractĂšres et des paragraphes
Insérer des images simples
InsĂ©rer des galeries dâimages
Apercevoir les contenus
8. Les commentaires
Notion de commentaire
Créer un commentaire
Administrer les commentaires
9. Les utilisateurs
Notion d'utilisateur
Créer un utilisateur
Gérer l'utilisateur
Optimiser les droits des utilisateurs en fonction de leur rĂŽle
10. Les extensions
https://wordpress.org/plugins/
Découvrir les extensions
Utiliser les extensions
Rechercher les extensions
Choisir une extension en fonction de différents critÚres
11. Les mises Ă jour
Découvrir les mises à jour
Ăviter les piĂšges
12. Les thĂšmes
Découvrir les thÚmes
Utiliser les thĂšmes
Rechercher les thĂšmes
Choisir un thÚme en fonction de différents critÚres
Paramétrer un thÚme
13. La sauvegarde et la restauration
Sauvegarder son site
Restaurer son site
Site local
Site distant
extension UpdraftPlus WordPress Backup Plugin : https://wordpress.org/plugins/updraftplus/
remplacer le chemin dâaccĂšs au site liĂ© Ă localhost/mon-site par lâURL du site hĂ©bergĂ©
14. Gutenberg
Désuet.
15. WordPress et PHP
Découvrir l'interaction entre WordPress et PHP
Découvrir le codex
codex WordPress est le guide de référence officiel de WordPress
Découvrir la boucle et ses fonctions
bloginfo()
wp_nav_menu()
Découvrir les filtres
Découvrir les hooks
Découvrir les actions
Découvrir les globales
Découvrir les classes
Découvrir WP_Query
Découvrir wpdb
DĂ©couvrir les principales mĂ©thodes de requĂȘtes pour la base de donnĂ©es
16. Les thĂšmes enfants
Découvrir les thÚmes enfants
Créer un thÚme enfant
Utiliser un thĂšme enfant
Paramétrer un thÚme enfant
(+) Seul le fichier functions.php nâĂ©crase pas le parent. Il est chargĂ© en plus, et avant le fichier functions.php parent.
17. La création de son propre thÚme
Principe des zones dâaffichage
La structure des thĂšmes
Les fichiers des thĂšmes
Lâappel des fichiers
Les templates
Créer une boucle
Les marqueurs
18. La création de sa propre extension
CrĂ©er un fil dâAriane dans functions.php
Créer une extension Widget avec PHP
Créer une extension avec PHP/MySQL
19. Sécuriser son site
20. Liens utiles
{Bonus} WordPress sans WampServer
Merci Ă Pierrick Anceaux.
Lâobjectif est de pouvoir utiliser WordPress sans WampServer, Ă travers un IDE (ici, PhpStorm). [crĂ©er la db]
->Lancer PHPStorm
Le plus simple a été d'avoir utilisé PhpStorm pour un projet 'bidon' (Symfony par exemple):
->composer req doctrine etc...
(->make:entity placeholder ? pas sûr du tout que ce soit nécessaire)
-> renseigner le .env.local avec DATABASE_URL
Ainsi on aura une database avec le login/motdepasse et l'adresse ip
->faire un d:d:c (mĂȘme pas besoin de d:s:u)
->Fermer PHPStorm
[host phpmyadmin]
->Télécharger et Dézipper https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.zip
->Lancer PHPStorm
->Fichier / Ouvrir le dossier
->trouver dans l'arborescence racine le fichier config.sample.inc.php
->en faire une copie au mĂȘme endroit nommĂ©e config.inc.php
(->y trouver la ligne $cfg['Servers'][$i]['host'] = 'localhost'; pour renseigner une IP externe)
(->y trouver d'autres ligne comme allowNOpassword qui fait exactement ce qu'on pense)
->"symfony serve" pour lancer le serveur, ou bien "php -S localhost:8080" marche aussi mais changer le 8080 (8001 ? 8002?..)
[host wordpress]
->Télécharger et Dézipper https://fr.wordpress.org/download/#download-install
->Renommer toujours au nom du site/projet/whatever_not_"wordpress"
->Fichier / Ouvrir le dossier
->symfony serve
[initialiser]
->Ouvrir son navigateur phpmyadmin depuis le lien de la console phpstorm (exemple moi http://127.0.0.1:8001, pas de /phpmyadmin puisque le serveur créé plus haut se crois "seul" )
->renseigner login/mot de passe saisis dans le .env.local de la premiÚre étape
->comme via WAMP, créer une database
->Ouvrir son navigateur wordpress (idem c'est un second serveur 'standalone', par exemple http://127.0.0.1:8002 )
->se laisser guider comme d'hab via WAMP
[epilogue]
->supprimer la database "bidon" qu'on avait fait au dĂ©but ne devrait pas empĂȘcher le bon fonctionnement par la suite