Passionné par le web depuis la fin des années 1990, j'ai développé au fil des ans des compétences en matière de création web.
Créant des sites internet sous WordPress depuis 2006 et développant exclusivement sur Wordpress depuis 2014. Je créerai le site ou l'extension WordPress dont vous avez besoin.
Développeur d'extensions, Contributeur au Core et orateur lors de WordCamp, ma vie est rythmée par WordPress.
GestSup est une solution de gestion de support auto-hébergée que j’utilise avec certains de mes clients pour prioriser les interventions et les développements réalisés par Thivinfo.
Jusque là j’avais, comme beaucoup, un formulaire de contact qui m’envoyait par mail le contenu saisi dans le formulaire en ligne. Ce mail, je le retranscrivais dans GestSup pour créer un ticket… faire et défaire c’est toujours travailler mais pendant ce temps là je n’étais pas productif pour développer les demandes de mes clients.
J’ai donc décidé de créer une extension WordPress qui génèrerait un formulaire via un code-court à placer sur le site et qui irait créer automatiquement un ticket dans GestSup. J’ai donc créé WP GestSup Connector qui fait exactement ce que je décris plus haut… sauf que…
Sauf que si la personne me contactant via le formulaire n’existe pas dans la base de données GestSup et bien le ticket n’est pas créé, je reçois la demande par mail, je la retranscris dans GestSup… hey mais… je l’ai déjà dit ça ! Ça ne pouvait plus durer et je me suis replongé dans le développement de l’extension.
Elle vérifie si l’adresse de la personne envoyant le formulaire existe dans la base de données GestSup. Si c’est le cas, le ticket est créé… si ce n’est pas le cas, un utilisateur est créé avant de créer le ticket.
Afin d’éviter le spam, WP GestSup Connector intègre Google Recaptcha. C’est optionnel, activable par une case à cocher dans les paramètres de l’extension.
Si vous suivez l’actualité liée à WordPress, vous devez être au courant qu’un chantier énorme a été initié il y a plusieurs mois déjà.
Retour en arrière pour ceux qui n’ont pas suivi. Lors du WordCamp Europe 2017 qui s’est tenu à Paris, Matt Mullenweg avait annoncé que le projet de nouvel éditeur nommé Gutenberg intégrerait le Coeur de WordPress si les 100000 activations étaient atteintes rapidement. Il n’aura fallu que quelques semaines.
Depuis, il y a eu plusieurs versions de WordPress et de Gutenberg en tant qu’extension et il est dorénavant temps de publier WordPress 5.0.
Dit comme ça, cela semble anodin mais le projet Gutenberg est – de la voix de Matt Mullenweg himself – le plus gros chantier entrepris par notre CMS préféré depuis 15 ans et il s’apprête a débouler sur 1/3 du Web, un tiers des sites internet dans le monde… ce n’est pas rien!
Gutenberg divise
WordPress bénéficiait d’une large communauté très soudée et le moins que l’on puisse dire… c’est qu’elle a pris un peu de plomb dans l’aile.
En effet, un tel changement ne peut pas satisfaire toute le monde et chacun voit l’avantage ou l’inconvénient qu’il va en tirer.
Gutenberg divise car bouscule les habitudes et l’humain est feignant, il aime pas être chamboulé… un fork de WordPress a même été créé
Le projet Gutenberg divise la communauté pour des raisons plus ou moins compréhensibles depuis plusieurs semaines toutefois il faut avancer et s’adapter.
WordPress 5.0 et Gutenberg c’est pour maintenant
On en a parlé pendant longtemps, on n’avait pas de date… mais ça c’était avant alors que devons-nous faire? Mettre à jour? tester? Ne rien faire? Partir en courant?
Ce que Thivinfo va faire
Pour mes clients, j’ai installé Classic Editor. Classic Editor est une extension WordPress permettant de désactiver le Nouvel Editeur (nom de Gutenberg dans le Coeur de WP).
Avec Classic Editor, l’expérience utilisateur de mes clients ne va certes pas changer mais leur site sera toujours actif et disposera de WordPress 5.0.
La deuxième étape, pour les clients en maintenance sera de tester sur une instance autre que le serveur de Production le même site sans Classic Editor et voir au cas par cas ce qui fonctionne et ce qui est à corriger, si c’est corrigible etc.
Il y a quelques mois, l’agence Whodunit avait écris un article concernant le passage à WordPress 50 et les différentes possibilités qui s’offre à nous:
Passer de WordPress 5.0 et à Gutenberg – en prenant soin de proposer un accompagnement au changement pour les personnes chargées de l’administration des sites. Passer de WordPress 5.0 en conservant l’éditeur classique tout en communicant sur la sortie de Gutenberg. Rester sur la branche 4.9 car le site ne permet pas une mise à jour maîtrisée. Ce cas est à éviter par tous les moyens (on en parlera plus loin), mais dans tous les cas, une communication est faite au client en toute transparence.
Je suis bien sûr à votre disposition si vous avez un site internet sous WordPress et ne savez pas réellement ce que le passage à WP5.0 va impliquer.
En conclusion
Je reste persuadé que le projet Gutenberg (qui va bien plus loin que le simple éditeur) est un formidable projet pour WordPress même s’il a divisé la communauté qui se remettra peut être difficilement de ce passage.
Je reste également persuadé que la communication autour de ce projet a été mal ou peu pensé. L’erreur la plus grosse selon moi a été… Gutenberg sera intégré dans WP 5.0…
euh… ok mais pourquoi pas décider de l’intégrer quand il sera prêt plutôt.
Aujourd’hui, en tant que professionnel du web et de WordPress, j’ai un choix a faire et pour le moment… il est fait.. Je vais continuer à proposer à mes clients la solution qui propulse plus du tiers du web… quitte, selon les projets a faire des adaptations.
Avouez le, si vous avez plusieurs sites a maintenir et que vous ne voulez pas passer par le bouton « mettre a jour »pour des raisons pratiques et de rapidité, les extensions premiums sont assez chia… casse-pieds à gérer.
Quelles solutions pour mettre ses extensions premiums WordPress à jour?
Vous avez plusieurs solutions:
Se rendre sur le site de l’éditeur de l’extension, sur son profil, récupérer le .zip de la mise a jour et la transférer via FTP ou via Git selon les habitudes de chacun. Cette opération sera a réitérer sur chacun de vos sites…
Avoir une copie de « dev » de ses sites en local avec les clés API renseignées et cliquer sur le bouton qui va bien…
Avoir un dépôt Composer avec les dernières version de ses extensions premiums WordPress disponible.
Et c’est bien cette dernière solution que je compte vous présenter dans ces quelques lignes!
Composer est un gestionnaire de dépendance pour PHP mais ce tutoriel n’a pas pour but de vous expliquer le fonctionnement de ce logiciel. Etant très répandu, d’autres vous expliquerons tout ca bien mieux que moi.
L’idée est donc de créer son propre dépôt Composer sur lequel nous pourrons téléverser les différentes extensions dans leurs dernières versions ensuite il suffira de lancer une mise a jour via Composer sur nos différents projets! Et c’est justement ce que propose Release Belt de Rarst.
Découvrons Release belt
Release Belt est un projet de logiciel libre développé par Andrey Savchenko.
L’installation est assez simple puisqu’il vous suffit de cloner un dépot Git sur votre hébergement Web. Personnellement j’ai créé un sous domaine composer.thivinfo.com sur lequel j’ai installé Release Belt.
Le Readme est assez clair et en 3 commandes votre dépôt composer sera créé:
git clone https://github.com/Rarst/release-belt
cd release-belt
composer belt-update
A ce stade, votre dépot composer privé est installé, il ne reste plus qu’a téléverser les zip de vos extensions sur ce dépôt.
Pour cela il faut créer dans le répertoire releases un dossier « type » puis dans ce dossier type, créer un dossier avec le nom de l’extension et a l’intérieur de celui téléverser le zip… quoi c’est pas clair ?!
Le dossier « Type » peut être un dossier nommé par un nom natif de composer ou dans le cas qui nous interesse: « wordpress-plugin » mais ces possibilités existent:
wordpress-plugin
wordpress-theme
wordpress-muplugin
wordpress-dropin
Potentiellement, vous pourriez gérer tout autres projets autre que WordPress en utilisant ces types.
Chez moi le chemin vers les versions de SeoPress Pro ressemblera donc à /public_html/prod/composer/release-belt/releases/wordpress-plugin/wp-seopress-pro où
/public_html/prod/composer/ corresponds à la racine de mon installation Release Belt
/releases/wordpress-plugin/ le répertoire contenant la liste de mes extensions hébergées
Afin que seul vous ou les utilisateurs autorisés puissent accéder à votre dépôt Composer, je vous conseille fortement de le protéger via un système d’authentification. Les développeurs d’extensions ou de thème premium pourraient ne pas aimer que vous partagiez gratuitement leur travail.
Utiliser son dépôt Composer personnalisé dans un projet WordPress.
Toutes les informations utiles se trouve sur la page d’accueil de votre dépot Composer. Chez moi c’est donc composer.thivinfo.com.
Si vous êtes un habitué de composer, vous saurez analyser les informations fournies par cette page auto-générée par Release-Belt.
Sinon il faut déclarer le dépôt dans votre composer.json:
Il y a quelques mois, je vous présentais dans ces colonnes le teaser de la video ThinkWP présentant WordPress, son écosystème ainsi que sa commuanuté.
Présenter WordPress à un public ne connaissant pas ou minifiant sa puissance est une des choses qui me tient à cœur et Thivinfo a tenu à sponsoriser la réalisation de cette vidéo.
Aujourd’hui, Déborah Donnier et Émilie Lebrun, les deux personnes à l’origine de ce projet nous font l’immense plaisir de dévoiler cette vidéo dans un format 32 minutes.
Les chanceux qui étaient au WordCamp Paris 2018 avaient eu la chance d’en voir une version qui a été améliorée lors du dernier WPtech de Lyon
Et si on regardait la vidéo ?
Vous désirez en savoir plus? Voici le lien vers le site WeThinkWP
Il y a quelques mois j’avais testé Docker pour gérer mes environnements de développement.
L’avantage majeur de Docker est de pouvoir développer en local sur les meme bases techniques du serveur. Avouez que c’est tentant quand on a des sites hébergés chez des prestataires différents ( Même si la plupart pour mon cas sont chez O2Switch ) avec des versions logicielle des PHP, Mysql, Mariadb différentes.
L’inconvénient majeur de Docker, a mon humble avis, réside dans la complexité de configuration!
Je n’avais jamais réussi a faire fonctionner plusieurs vhost en meme temps!
Avec Lando, c’est simple!
En discutant avec un collègue sur le Slack WordPress francophone, j’ai découvert Lando.
Pour utiliser Lando, il vous faut tout d’abord installer Docker, puis Lando vient en surcouche. Il va vous faciliter grandement la configuration des différentes images Docker à utiliser pour faire tourner votre environnement.
Des Recettes WordPress!
Lando propose des « Recipe », littéralement des recettes pour les principaux CMS et Frameworks du marché dont bien sur WordPress.
Avec la recette WordPress, Lando va créer un envirronement comprenant PHP, et Mariadb pour faire tourner votre site mais également wp-cli !
Bref, en quelques secondes de lancement, vous voilà pret a développer sur votre CMS préféré.
Une configuration simplifiée pour Docker!
Voici un exemple du fichier de configuration .lando.yml que vous devrez avoir a la racine de votre projet pour lancer votre instance Lando!
Il s’agit d’un simple fichier texte au format .yml qui sera lu par Lando pour qu’il puisse créer votre environnement.
Noter un « name », celui ci sera utilisé pour créer vos url locales de développement! ainsi que les services que vous désirez créer et dans quelle version!
Ici j’ai choisi un PHP en version 7.0, Mariadb dans sa version stable courante, Phpmyadmin, Mailhog pour « attraper les mails » sortant sans avoir de serveur mail à configurer. On trouve aussi la configuration d’un second serveur de base de données ‘old-test’, l’activation de Xdebug et de Composer!
Lando sur Github
Le 19 octobre 2018 aura lieu un évènement très important sur la cote d’azur… le prochain rendez-vous important pour la communauté WordPress aura lieu à Nice!
Je ne dévoilerais bien sur pas le contenu de cette conférence de 20 minutes avant mais le programme étant dévoilé et la billetterie ouverte, il est grand temps que vous en connaissiez le titre et le sujet au moins 😉
D’esclavagiste à Développeur WordPress: itinéraire d’une reconversion réussie!
Vous exercez une activité et avez envie d’en changer ?
Vous n’osez pas sauter le pas ?
Vous vous demandez si devenir un professionnel de WordPress est réellement ce que vous voulez?
On se retrouve le 19/10 à Nice pour que je vous raconte ma vie mon expérience ?
Souvent lorsque je parle de WordPress à mes prospects, ils me rétorquent qu’il s’agit d’une plate-forme de blog et qu’eux veulent un vrai site. La dessus, j’ai beau dire que de grandes compagnies travaillent sur cette plate-forme, sans exemple ce n’est pas convaincant!
C’est alors que ce matin devant mon café, je suis tombé sur cet article de WPBeginner (en)! le titre pourrait être traduit de la façon suivante:
40 Grands noms utilisant WordPress.
Sans lister les 40, on peut noter:
BBC America
Sony Music
Bata
Fortune
New-York Times
The Rolling Stones
La Maison Blanche
Si ces grands noms, soucieux de leur image utilisent WordPress, pourquoi pas vous? Rencontrons nous!
Dans l’épisode précédent, je vous présentais simplement (du moins je l’espère) comment mettre en place un multisite sous WordPress. Nous avons vu que nous pouvions donc créer sur la base d’une seule installation WordPress autant de site que nous voulions.
Les sites créés avaient alors 2 syntaxes possibles:
en sous-domaine ex: site1.example.com
en sous-dossier ex: example.com/site1
Avouez que c’est un bon début mais que si en plus on pouvait avoir une URL personnalisée… Alors ce serait parfait!
Quand je parle d’URL personnalisée, je veux dire une adresse de site comme thivinfo.com pour le 1er site et tartempion.com pour le second.
C’est précisément maintenant que le domain mapping intervient.
Mise en place coté registrar
Et oui, il va falloir paramétrer le ou les noms de domaines que vous voulez mapper chez votre registrar. Je ne peux pas vous détailler la façon de faire car elle est propre à chaque hébergeur selon le panel d’administration utilisé.
Sachez que, si votre nom de domaine est géré par votre hébergeur, il faut faire pointer ce domaine à la racine du dossier contenant votre installation WordPress.
Mise en place coté WordPress
Une fois que vos domaines pointent sur le bon dossier, il faut prévenir WordPress qu’il va devoir gérer 1 ou plusieurs autres domaines.
Concrètement, on va imaginer que j’ai un réseau de site WordPress sur le domaine tuto-multisite.local et que sur ce reseau de site j’ai un site https://tartempion.tuto-multisite.local.
https://tartempion.tuto-multisite.local est une URL tout a fait accessible (en local mais le principe est identique sur une URL publique) et je pourrais rester comme ça. Sauf que pour communiquer il serait plus simple de donner comme URL tartempion.com.
Le but est donc de faire pointer toutes les requêtes de tartempion.tuto-multisite.local et de les envoyer sur tartempion.com.
Si vous retournez dans les réglages du Domain mapping vous verrez ce nouveau menu de réglages :
Sauvegardez bien vos paramétrage et… votre multi-site multi-domaine WordPress est prêt! \o/
Mappez son 1er domaine WordPress
On va donc mapper tartempion.com sur tartempion.tuto-multisite.local.
Etant en local et ne possédant pas réellement le domaine tartempion.com, je vais modifier le fichiers hosts de ma machine pour simuler ce domaine.
Je me rends sur l’administration de mon site à mapper https://tartempion.tuto-multisite.local/wp-admin/ puis dans le menu « Outils/Domain Mapping ».
Vous trouverez cette page:
Renseignez votre domaine à mapper (dons mon cas tartempion.com sans http ou https). Si le domaine sera le domaine principal alors cochez « Primary domain for this blog ». Vous pourrez ainsi avoir autant de domaine mappez pour un site (le www.tartempion.com par exemple) mais un seul sera servi.
Bravo! Vous avez mappé votre premier domaine !
Merci à Bruno Tritsch d’avoir réalisé le tutoriel vidéo suivant illustrant parfaitement mon tutoriel.
Si vous me lisez, certainement que vous utilisez régulièrement mon CMS préféré à savoir WordPress.
WordPress est un logiciel libre ou Open-Source en anglais. C’est à dire que le code du logiciel est disponible et que vous pouvez le modifier et l’améliorer comme bon vous semble… Il y a quelques limitations tout de même… vous devez entre autre repartager vos améliorations.
Pourquoi contribuer?
Je pense qu’il y a autant de raison de contribuer au projet WordPress qu’il existe de contributeurs…
La raison qui revient très souvent lorsqu’on en parle avec d’autres contributeur c’est :
Je contribue à WordPress pour apporter ma pierre à l’édifice et rendre la pareille au CMS et à sa communauté.
Vous aurez probablement votre propre raison, mais faire parti de cette aventure aura une place dans ce choix.
Les différentes façon de contribuer au projet WordPress.
Lorsqu’on parle de contribution la majeur partie des personnes pensent au code: Contribuer en apportant des améliorations au CMS via du code. Seulement, tout le monde n’est pas développeur et pourtant, nous pouvons tous contribuer!
Il existe (pour le moment) 18 pôles de contribution. Vous pouvez les rejoindre en visitant cette page: https://make.wordpress.org/ qui est le portail central de la contribution WordPress.
Ces 18 pôles seraient les façons de contribuer officiellement à WordPress mais il existe bien d’autres manière d’apporter sa pierre à l’édifice.
JB Audras a commencé une série d’article sur le thème de la contribution au Coeur de WordPress.
Contribuer en publiant
Vous vous sentez l’âme littéraire? Écrire des articles sur votre site internet à propos de WordPress. Que ce soit pour expliquer techniquement une action menée lors d’un développement ou bien expliquer comment vous utilisez telle ou telle extension… c’est Contribuer à WordPress.
Contribuer en organisant ou en participant à des évènements autour de WordPress
Vous vous rendez à un Meetup WordPress? à un WordCamp c’est un début de contribution car vous faites une démarche pour le CMS WordPress. Vous allez en parler, y retourner. Bref vous allez faire vivre la communauté.
Bien sur l’étape suivant la participation à un évènement est bien souvent sa particpation en tant qu’organisateur ou bénévole lors de WordCamp. Sachez qu’a chaque WordCamp il y a un appel à bénévoles. Les Bénévoles lors de WordCamp sont les petites mains qui font en sorte que l’évènement soit réussi.
Pour le moment en France, il existe 4 WordCamp:
Si vous vous sentez l’âme voyageuse, il en existe dans le monde entier! voici les prochains en Europe et dans le monde
Chacun de ses évènements feront des appels et je vous invite à suivre les comptes Twitter de chacun d’entre eux pour rester informé.
Vous n’habitez pas près de l’un de ces 4/5 WordCamp? Vous ne vous voyez pas traverser la France pour nous rencontrer ? On est bien triste mais il y a des évènements autour de WordPress un peu partout (à suivre sur l’agenda de WPFR)
J’espère que ces quelques lignes qui sont bien loin de relater toutes les formes de contributions possible vous donnerons envie de creuser le sujet 😉
Si la contribution à WordPress vous intéresse mais que vous ne savez pas comment commencer, n’hésitez pas à me laisser un commentaire, j’essaierais de vous aider au mieux.
O2Switch est un hébergeur français proposant pour un tarif tout a fait compétitif un hébergement mutualisé de qualité avec de surcroît un support technique très réactif… ce qui n’est pas forcément le cas des grands noms de l’hébergement. Je suppose dans cet article que vous disposez d’un hébergement chez eux.
Ce tutoriel WordPress fait suite aux 2 premiers consacrés à la création d’un WP multisite et au Domain Mapping sur WordPress qui ont été réalisé sur une instance locale. Je suppose que vous avez suivi ces 2 premiers tutoriels pour suivre celui ci et que vous disposez de 2 sites parfaitement fonctionnels sur un multisite.
Pour ce tutoriel, nous nous servirons de https://site1.thivinfo.eu/ et https://site2.thivinfo.eu/
Le Multi domaine, Pourquoi faire?
Nous avons vu dans nos précédents tutoriels que nous pouvions disposer de plusieurs sites internet avec une seule installation WordPress mais tous avaient le même type d’url (en sous-domaine ou en sous-répertoire).
Aujourd’hui, nous allons voir comment faire en sorte d’avoir des urls complètement différentes en l’occurrence sebastienserre.com au lieu de site1.thivinfo.eu et developpeur-wordpress.paris* au lieu de site2.thivinfo.eu.
Paramétrer les domaines chez O2Switch
Ici, le but est de diriger le trafique en provenance des 2 domaines developpeur-wordpress.paris* & sebastienserre.com vers le répertoire contenant votre installation de WordPress.
A ce stade, vos 2 domaines vont pointer sur le site principal sur votre WordPress. Il va falloir maintenant mapper les domaines avec les sites.
Vous pouvez suivre le tutoriel « Faire du Domain Mapping avec WordPress multisite » pour paramétrer WordPress comme il faut.
*developpeur-wordpress.paris ne réponds pas aux règles d’utilisation de la marque WordPress, il ne sera utilisé que pour ce tutoriel et a titre d’exemple.
Il y a quelque temps, je cherchais pour mon activité de développeur Freelance WordPress un gestionnaire de ticket simple et efficace. J’en ai essayé plusieurs: des solutions externes, des extensions WordPress, rien ne me convenait complètement. En discutant avec une amie également Freelance, j’ai découvert GestSup.
Avec GestSup comme avec beaucoup d’autres système de ce genre, le support va se faire via un système de ticket. Chaque ticket peut être catégorisé et sous-catégorisé.
Vos clients peuvent ouvrir des tickets, les attribuer à un technicien manuellement ou automatiquement, leur attribuer un degrès d’urgence, de criticité.
L’avantage de ce genre d’outils est que toutes vos demandes de support sont centralisée au même endroit. Vous avez un historique de chaque problème et surtout leur solution. La solution d’un jour peut resservir dans le futur.
Je pourrais bien entendu vous faire un tour complet de GestSup mais il existe un espace Demo qui vous permettra bien plus facilement de vous rendre compte du potentiel de la solution.
Intégrer GestSup avec votre site WordPress
Mes clients avaient l’habitude de me contacter en utilisant le formulaire disponible sur ma page contact, je l’ai remplacé par une page support qui leur permets d’ouvrir un ticket directement depuis mon site web.
Pour réaliser cette page, j’ai développé l’extension WordPress qui est désormais disponible sur le dépôt officiel WordPress.
Il existe beaucoup de solutions pour intégrer une carte Google dans vos contenus WordPress. Aujourd’hui nous allons voir une solution basée sur un champs Gmap d’Advanced Custom Field (ACF). Cet article est une traduction du tutoriel d’Alicia Ramirez.
Ce tutoriel est basé sur l’utilisation de l’excellentissime extension Advanced Custom Field car elle est utilisée sur la totalité de mes développement et très simple à mettre en oeuvre.
Étape 0: Obtenir une clé API Google Map.
Avant de pouvoir utiliser Google Maps, il va falloir obtenir une clé API Google Map. Vous pouvez utiliser l’API Standard qui autorise 25000 affichage de carte par jour) ou si vous avez beaucoup de trafic, vous devrez opter pour un plan Premium.
Étape 1: Ajouter du CSS
Coller ce code dans votre feuille de style (style.css) ou ailleurs si vous le pensez plus approprié.
Étape 2: Création d’un script Javascript initialisant la carte.
Copiez / collez ce code dans un fichier gmap.js que vous pourrez stocker dans un dossier de votre thème. Pour l’exemple nous prendrons library/js.
Étape 3: Chargement des scripts par WordPress
Maintenant, il vous faut charger les scripts précédemment créé lors du chargement de WordPress. Vous pourriez coller les liens dans le header.php de votre thème… mais ce n’est vraiment pas une bonne pratique WordPress. Nous allons utiliser la fonction dédiée de WordPress : wp_enqueue_script()
Dans votre functions.php de votre thème, ajoutez le code suivant:
Aux lignes 2 et 10, remplacez « XXXX » par votre clé API Google Map.
À la ligne 3, assurez vous d’avoir saisi le chemin vers le script JS créé à l’étape 2.
Étape 3 – Bonus
Si vous ne voulez charger votre carte que sur certaines page, par exemple la page « Contact », vous pouvez modifier le code comme ceci:
Étape 4: Affichage de la carte
Dans votre template de page, là ou vous désirez voir la carte, insérez ce code dans la Boucle:
Assurez vous de bien modifier le nom du champs ACF Google Map. Ici on a utilisé « location » dans get_field('location');.
Conclusion:
Vous venez d’ajouter une carte Gmap dans votre thème WordPress sans utiliser aucune extension. Notez que vous pouvez vous passer d’ACF si vous désirez saisir « en dur » les coordonnées GPS d’un lieu. Il vous suffira d’adapter les valeurs de data-lat et data-lng
Gravity Form est une extension WordPress Premium (entendre payante) offrant la possibilité de construire des formulaires de toutes sortes assez poussés.
Sur un projet, j’ai récemment eu besoin d’alimenter de façon automatique des champs d’un formulaire et je me suis dis que j’e pouvais aussi vous en faire profiter…
Récupérer des informations via les paramètres d’une URL
Si vous êtes développeur, ceci ne devrait pas éveiller de questions, si ce n’est pas le cas vous vous demandez sûrement ce que sont ces paramètres d’URL… vous en avez pourtant déjà tous croisé!
Imaginons une URL du type: https://thivinfo.com/blog/tutoriels/pre-remplir-un-formulaire-gravity-form-avec-des-parametres-durl/ … rien de transcendant hein … maintenant en ajoutant les paramètres:
?checkbox=1&texte=mon%20test
on va se retrouver se retrouver avec cette URL https://thivinfo.com/formulaire-pour-tutoriel-gf-et-parametre/?checkbox=1&texte=mon%20test
Et là avouez que le résultat est sympa et que dans bien des cas, ca pourrait être très pratique!
Comment faire ?
Tout d’abord, il va vous falloir acheter Gravity Form puis créer un formulaire.
Pour un champs simple type « texte »
Prenons exemple de mon champ texte, en back-office vous devrez obtenir ceci:
Dans l’onglet « Avancé », cochez « Remplir dynamiquement les champs ». Ceci fera apparaître un champs ou vous pourrez nommez votre paramètre. Ici dans un élan d’inspiration je l’ai nommé « Texte » ce qui me permettra d’avoir le paramètre
texte=
Pour un champs avancés de type « checkbox »
Pour ce type de champs, c’est un peu plus compliqué car il ne s’agit pas de simplement remplir un champs de type Input, il faut définir quelle choix cocher…
Pour ce faire, nous allons dans l’onglet « Général » cocher la case « afficher les valeurs » ce qui aura pour effet d’ajouter un champs par choix afin de pouvoir sélectionner facilement l’une ou l’autre des possibilités du champs « Checkbox ».
Il faut bien entendu définir un paramètre « checkbox » dans l’onglet avancé de la boite de Dialogue Gravity Form pour réaliser l’exemple d’URL cité en début d’article.
Précision pour les non-développeu⋅r⋅se⋅s
Il n’y a pas d’ordre à respecter dans les paramètres à mettre dans l’URL. Le 1er paramètre est toujours un ? et les suivants sont séparés par des esperluettes (&).
Et sinon?
Et sinon… vous n’êtes pas obligé de passer les paramètres dans un lien… vous pouvez aussi les placer dans le code-court (shortcode) de Gravity Form à la manière de
Contact
Précision pour les développeu⋅r⋅se⋅s
Cette technique est très pratique si vous la couplez à la fonction WordPress add_query_arg() qui vous permettra de construire dynamiquement des URL contenant des paramètres. Si vous désirez en savoir plus sur cette fonction, je vous invite à lire l’article très complet de Maxime Culea
Une autre initiative à vu le jour il y a quelques mois et c’est une initiative qui me tient à cœur et à laquelle j’ai tenu à participer en étant interviewé lors du dernier WordCamp Europe qui s’est tenu à Paris en juin 2017: WeThinkWP
Pourquoi ce projet me tient à coeur?
La première raison est qu’elle vise a mieux faire connaitre WordPress dans nos contrées française… si le CMS propulse environ 30% des sites internet dans le monde, il est encore trop souvent associé à un moteur de blog en France.
Le reportage de 50 minutes devrait sortir en cette fin d’année et permettra je l’espère de mieux faire connaitre WordPress et sa communauté.
En attendant la sortie du reportage final vous pouvez toujours sponsoriser la vidéo afin d’aider financièrement l’équipe derrière le projet qui aidera au final toute la communauté francophone.
La vidéo finale sera présentée à l’occasion des 10 ans du WordCamp Paris qui aura lieu le 9 mars 2018. C’est déjà complet (le 2eme lot de 100 places a été vendu en quelques heures) mais si vous voulez nous rejoindre, vous pouvez tweeter @WordCampParis votre demande de place qui relaiera l’information et vous aidera a trouver le précieux sésame.
Si vous ne trouvez pas de place ou que vous ne pouvez tout simplement pas vous déplacer, l’évènement sera retransmis en direct via un LiveStream ! Mais là aussi, vous devez réserver votre place… alors n’attendez pas car à l’heure ou je rédige ces lignes, il ne reste plus que 129 places!
Dans ce tutoriel, je vais vous expliquer ce qu’est un multi-site WordPress, pourquoi le mettre en place et surtout comment!
Le multi-site: qu’est ce que c’est?
La plupart d’entre vous doivent connaître WordPress « classique », WordPress « single » comme on lit aussi. C’est une installation de notre CMS qui va être utilisé pour propulser fièrement un site internet.
En activant la fonctionnalité « Multi-site », votre WordPress « classique » avec une installation unique va pouvoir propulser autant de sites web que votre serveur saura en supporter!
Le meilleur exemple dans ce domaine n’est autre que wordpress.com la plateforme de sites internet créé et gérée par Automaticc. Ce service commercial qui propulse aujourd’hui plusieurs millions de sites internet n’est en fait qu’une seule installation de WordPress!
Depuis WordPress 3.0, la fonctionnalité multi-site est complètement intégrée dans WordPress.
Dans quel cas utiliser un réseau de site ?
Il peut être intéressant de créer un réseau de site lorsque vous allez avoir plusieurs site a héberger… vous ne gérerez alors qu’une seule installation partageant thèmes et extension. Vous gagnerez du temps en maintenance puisque vous mettrez par exemple à jour un seul Core WordPress, une seule version d’extension ou de thème.
Différentes utilisation possible
On utilise aussi parfois le multi-site pour créer un site multilingue. On fera en sorte d’attribuer une langue par site et de rédiger du contenu du différent par site.
Les sites en réseau peuvent également servir pour créer un site par site d’entreprise, une holding et ses filiales par exemple.
Comment mettre en place un multi-site avec WordPress?
Sachez qu’il existe 2 façons de créer son réseau de site:
En sous-domaine: vos url seront de la forme site1.example.com, site2.example.com
En sous-dossier: vos url seront de la forme exmple.com/site1, example.com/site2
Si vous installez votre réseau sur une installation neuve, vous aurez le choix entre ces 2 structures. Si vous transformez une installation de WordPress existante, vous n’aurez pas d’autre choix que de choisir l’installation en sous-dossier.
A noter qu’il n’y a pas de chose que vous ne pouvez pas faire avec une des installations et que vous pouvez faire avec l’autre!
Création du réseau
Tout d’abord, pour cette exemple, je vais partir d’une installation locale de WordPress.
Bien sur, il est vivement conseillé de réaliser une sauvegarde complète ( fichiers + base de données) à ce niveau.
En suivant la bible du développeur WordPress, j’ai nommé le Codex, on comprend qu’il faut créer une constante PHP dans le fichier de configuration de WordPress situé à la racine de votre installation.
/* Multisite */
define('WP_ALLOW_MULTISITE', true);
/* C’est tout, ne touchez pas à ce qui suit ! */
Cette constante aura pour but de signifier à WordPress que nous l’autorisons à créer un Multisite et concrètement ca donne cela:
Cliquons sur la nouvelle entrée du menu « Outils » nommée « Création du réseau ». Vous obtiendrez cette page:
C’est a cette étape que vous pourrez choisir la structure de vos URL. Soit en sous-domaine, soit en sous-dossier. Si vous désirez opter pour les URL en sous-domaine, il faudra créer une entrée WildCard dans vos enregistrements DNS. Dans mon exemple ci-dessus, pour obtenir site1.tuto-multisite.local il vous faudra créer en DNS un wildcard avec le caractère astérisque (*) : *.tuto-multisite.local et le faire pointer sur le dossier contenant votre installation de WordPress.
Cliquez sur « Installer »
Ok donc là, j’ai un message d’erreur car j’ai demandé une installation de mon réseau WordPress en sous-domaine et je n’ai pas créé de domaine Wildcard comme demandé. Ceci car sur mon installation locale… ce n’est pas simple! WordPress à donc essayé de créer à la volée le sous-domaine aléatoire 14b292.tuto-multisite.local et n’y est pas parvenu. Si vous êtes en installation local, vous pouvez créer le domaine en éditant votre fichier « Hosts » notamment.
L’installation est presque terminée, il vous suffit de copier les 2 blocs de code dans le .htaccess et le wp-config.php de votre installation. Remplacez bien le contenu de votre .htaccess avec le bloc ci dessus.
C’est fait? Cliquez donc sur le lien « Se Connecter »
Bravo! Votre réseau de site WordPress est installé!
Découvrons le nouveau Back-Office de notre WordPress multi-site fraîchement installé.
La principale modification, vous l’aurez peut être remarqué réside dans l’apparition d’un nouveau menu, le menu de l’administration réseau:
Ici seront listé tous les sites que vous pourrez créer sur votre réseau de site en tant que Super-admin. En effet, en activant le mode multi-site, un nouveau rôle à été créé, celui de « Super-Admin ».
Qu’est ce que le « Super Admin »?
Sur une installation classique de WordPress, nous avons les rôles « Abonné », « Contributeur », « Auteur », « Éditeur » et « Admnistrateur ». L’Administrateur étant le rôle le plus haut, celui ayant le plus de droit sur votre installation. C’est l’utilisateur ayant ce rôle qui pourra ajouter, activer, supprimer une extension ou un thème. Il pourra également paramétrer complètement votre installation.
Sur une installation multisite, l’installation d’extensions et de thème se fait au niveau de l’administration réseau et plus au niveau de chaque site. Il fallait donc un nouveau rôle, permettant de gérer ce nouveau niveau d’administration.
Si on résume, un administrateur pourra gérer son site tandis que le super-administrateur pourra lui gérer tous les sites du réseau ainsi qu’installer des thèmes et des extensions qui seront disponible sur tout le réseau.
Principes généraux de fonctionnement
Voilà votre Multisite est maintenant installé mais je ne vais pas vous laisser comme ca!
Sachez qu’une extension comme un thème s’installe en tant que Super-admin sur le tableau de bord de l’admin réseau.
Sachez qu’une extension activée au niveau du réseau sera disponible sur tous les sites de votre Multi-site MAIS vous pouvez activer une extension site par site, ou chaque administrateur de site peut activer une extension sur son site.
Pour les thèmes, le fonctionnement est un peu différent, il doit être actif sur le réseau pour être activable sur chaque site. Ainsi, si vous avez un thème et son enfant, vous pouvez n’activez que le thème enfant pour qu’aucune modification ne soit apportée au thème « parent ».
L’article est nommé « 28 faits que vous ignorez à propos de WordPress » et visiblement l’auteur de l’article en ignore encore beaucoup…
C’est pas tout ca, mais passons à la lecture.
Célèbre outil Open source, lancé sur le modèle économique du Freemium,
Mince première ligne, première erreur… WordPress n’est pas sur le modèle Freemium mais sur le modèle Open-Source ce qui est complètement différent… Un Freemium est un logiciel gratuit dont des composants seront payant par la suite pour améliorer le logiciel de base… WordPress est Open-Source c’est a dire que les sources sont disponibles, connues et modifiables par tout un chacun et ce gratuitement… et vous pouvez chercher… tout est gratuit sur wordpress.org.
Ce CMS, aujourd’hui propriété de la compagnie américaine Automatticc
Arrrhhhh c’est dommage… 2eme paragraphe, 2eme erreur (j’espère qu’il n’y a pas trop de paragraphe!). Et non WordPress n’appartient pas à Automaticc. Certes Automaticc participe activement au développement du CMS, certes il s’en sert pour propulser WordPress.com mais non, désolé, WordPress n’appartient pas à Automattic puisqu’il est Open-Source, il appartient à tous ceux qu’il veulent contribuer (c’est écrit la).
on passe au 3ème et dernier paragraphe avant une superbe infographie ou le 1er chiffre donné fait état de prêt de 60% de part de marché des CMS…
Retrouvez dans l’infographie suivante toutes les informations les plus surprenantes sur cet outil méconnu du grand public, qui pourtant l’utilise sans le savoir :
Alors faut qu’on m’explique comment un outils ayant une part de marché de 60% est méconnu… a moins qu’il y ai des ponctuations manquante…
Je passe la ribambelle de chiffres sur le nombre d’extension (Plugin c’est en anglais), le nombre de téléchargement…
Au passage on a la rentabilité de Themeforest… ok mais… pourquoi cette entreprise travaillant dans l’ecosystème WP et pas une autre… ils sont nombreux a vendre des thème… surement car c’est le rouleau compresseur…
Envato est la société qui produit les thèmes et les plugins WordPress
Mais… WTF… on m’aurait menti quand je publie des extensions ici ? Envato est la société qui publie également ThemeForest dont nous avons parlé plus haut… c’est juste une place de marché qui prends un pourcentage sur la vente d’extension développé par d’autres entreprise (agence, développeur)…
La sécurité
Ahhhhh la sécurité et WordPress, les mythes ont la peau dure…. je suis désolé de vous apprendre qu’a l’heure ou j’écris WordPress est totalement sécurisé… aucune faille n’est connue…. donc pas exploitée… le jour ou une faille sera connue, un patch viendra la combler avant qu’elle ne soit publiée officiellement… et donc la faille n’aura pas été connu et donc WordPress est toujours sur… après si vous ne faites pas vos mises à jour…. j’ai envie de dire…. tant pis pour vous mais ce n’est pas la faute de WordPress. Si vous ne mettez pas d’huile dans le moteur de votre voiture… il va tourner un peu et finir par casser… vous direz quoi? que la voiture n’est pas solide?
revenons à l’infographie…
Sites Piraté par plateforme: WordPress 78% / Drupal 2%
On remonte l’infographie au début et on lit que WordPress représente 60% de part de marché et Drupal 4.9% alors forcément, mettez vous 2 secondes dans la peau d’un hackeur. Vous avez le choix de passer des heures a éplucher le code d’un CMS pour trouver une faille puis de passer des heures encore, pour développer un bot ou autre qui va aller exploiter cette faille… vous choisissez d’attaquer qui? WordPress avec 1/4 du Web et 60% de pdm dans les CMS ou Drupal avec 5% de PDM ?
De part les parts de marchés détenus par WordPress, les chiffres qui suivent dans l’infographie ne peuvent être qu’énorme…
Concernant la fuite « Panama Papers », WordPress n’y est pour rien et si l’auteur de l’infographie avait un tant soit peu fait des recherches (meme minimes), il aurait vu de suite que c’etait bien le cas. Il a été démontré que le WordPress qui hébergeait le site dont venait les fuites de doc n’était pas a jour et que a fuite des documents avait été opéré par une extension WordPress et une Drupal qui n’avait pas été non plus mise a jour…
Il y a quelques années, j’ai refondu le site d’une agence immobilière des Yvelines. J’avais a l’époque utilisé le framework de thème WPCASA dédié aux agences immobilière pour réaliser le projet sous le CMS WordPress bien entendu.
Il y a quelques mois, cette agence m’a demandée un système d’alerte e-mail pour que ses visiteurs puissent s’abonner sur des critères de recherches et recevoir ainsi un email lorsqu’un bien immobilier correspondait. Aucune extension WordPress adaptée à WPcasa n’existait! Je me suis donc employé à créer cette extension et mon client était satisfait.
Tout va bien alors! Oui sauf que WPCasa a décidé (et a bien fait) de migrer d’un framework de thème vers une extension WordPress. Ils ont bien fait car un thème est fait pour amener un design à un site pas des fonctionnalités… ce a quoi sont destinés les extensions.
Le constat? l’extension que j’avais développée pour mon client ne fonctionnera plus sur les installations de WPCasa en mode plugin extension… il me fallait donc en réécrire une partie!
La procrastination aidant, des mois ce sont passés et un jour, je m’y suis mis! rapidement, car pas grand n’a changé dans le code et une version deuxième version de WPCasa Mail Alert faisait son apparition. Pour ne pas perdre tout le monde, l’ancien extension a été renommée WPCasa Mail Alert Legacy .
L’extension WPCasa Mail Alert permet donc aux visiteurs de s’inscrire a une alerte e-mail en indiquant:
Son nom
Son E-email
La ville du bien recherchée
Le prix minimum
le prix maximum
le nombre de chambre souchaitée.
Une version payante existe également et est disponible sur ce site. Elle permet pour le moment de rajouter en critères de recherches, le nombre de salle de bains ainsi que le type de « transaction » (Location ou vente).
L’extension payante nécessite obligatoirement la version gratuite puisqu’elle rajoute des fonctionnalités.
En tant que développeur WordPress Freelance, j’utilise quotidiennement des solutions open-source. Que ce soit WordPress, Ubuntu Linux Desktop/Server ou encore Dolibarr.
Quelle rapport avec la loi de finance 2016 me direz vous?
Simplement la prochaine loi de finance veut interdire les logiciels libres de comptabilités et de caisse… oui interdire !
Concrètement une solution comme Dolibarr (que j’utilise pour deviser/facturer) pour gérer une petite entreprise pourrait se voir être interdite… et ce n’est pas le seul.
Prestashop est un logiciel français qui emploie une centaine de personne dans le quartier St Lazare à Paris. Il permet de créer un site e-commerce et intègre donc un système de facturation… c’est une solution française qui motorise plus de 100 000 sites e-commerce dans le monde avec autant d’emplois liés directement ou indirectement (agence web, Freelance) à cette solution.