Présentation de WP GestSup Connector, l’extension qui lie votre site WordPress au helpdesk GestSup

GestSup, qu’est ce que c’est?

Site web de GestSup.

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.

WordPress 5.0 est sorti le 6 décembre 2018 et alors?

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.

Créer son dépot Composer pour gérer ses extensions premiums

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

  •  /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:

"repositories": {
        "composer.thivinfo.com": {
            "type": "composer",
            "url": "https://composer.thivinfo.com/"
        }
    }

Puis dans la partie listant les extensions WordPress du projet vous copierez / collerez les lignes concernant l’extension voulue. 

Par exemple pour ajouter WP Rocket à mon projet, j’ajouterai les lignes suivantes à mon composer.json à la racine de celui-ci:

"wp-rocket/wp-rocket": "^3.2.2"

Facile!

ThinkWP, la vidéo est sortie!

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 ?

WeThinkWP… 30 minutes pour découvrir WordPress

 Vous désirez en savoir plus? Voici le lien vers le site WeThinkWP

Comment je suis passé à Lando pour développer en utilisant Docker !

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!
name: test
recipe: wordpress
config:
  webroot: .
  php: '7.0'
  xdebug: true
  database: mariadb
services:
  pma:
    type: phpmyadmin
    hosts:
      - database
      - old-test
  mailhog:
    type: mailhog
    hogfrom:
    - appserver
  old-test:
    type: mariadb
    portforward: true
    creds:
      user: wordpress
      password: wordpress
      database: old-test
tooling:
  composer:
    service: appserver
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

WordCamp Nice 2018: ma première participation en tant qu’orateur!

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!

Lors de ce Nice WordCamp 2018  aura lieu ma première conférence !

Qu’est ce qu’un WordCamp?

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 ?

Sébastien SERRE Speaker du WordCamp Nice 2018

Les grands aussi utilisent WordPress

Bonjour,

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
bbcamerica
  • Sony Music
sonymusic
  • Bata
bata
  • Fortune
fortune
  • New-York Times
nytimes
  • The Rolling Stones
rolling-stones
  • La Maison Blanche

Si ces grands noms, soucieux de leur image utilisent WordPress, pourquoi pas vous? Rencontrons nous!

Faire du Domain Mapping avec WordPress multisite

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:

  1. en sous-domaine ex: site1.example.com
  2. 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.

Installation de l’extension

Pour cela, nous allons utiliser une extension disponible gratuitement sur le dépot WordPress: https://fr.wordpress.org/plugins/wordpress-mu-domain-mapping/

Nous sommes en Multisite WordPress, l’installation des extensions se fait donc au niveau de l’administration réseau.

Ensuite, comme sur une site classique WordPress, vous recherchez l’extension WordPress MU Domain Mapping, l’installez et l’activez sur le réseau.

Rendez vous, toujours au niveau de l’admin réseau dans le menu « Domain Mapping ». Et là: Ça marche pas et vous avez une ligne disant:

« Please copy sunrise.php to /path/to/wp-content/sunrise.php and ensure the SUNRISE definition is in/path/to/wp-config.php »

Que l’on peut traduire par:

« Veuillez copier sunrise.php dans chemin/vers/wp-content/sunrise.php et assurez vous d’avoir défini SUNRISE dans votre fichier wp-config.php ».

Attention, voici LE passage compliqué de ce tutoriel consacré au domain mapping!

Dans le répertoire de l’extension sous wp-content/plugins/wordpress-mu-domain-mapping vous allez trouver le fichier sunrise.php

Prenez ce fichier et glissez le sous wp-content/

Il nous reste plus qu’a définir une constante PHP pour autoriser le domain mapping dans le wp-config.php

vers la partie où vous avez déclarez le multisite, ajoutez

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'tuto-multisite.local');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

define('SUNRISE', true);"}

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.

Comment Contribuer facilement à WordPress

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.
les poles de contributions à 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.

Paramétrer un WordPress multi site – multi domaines chez O2Switch

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.
pointage du premier domaine sur le dossier contenant le WordPress Multisite
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.

GestSup: le logiciel de support made in France

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.

GestSup pour Gestion de Support

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.

Intégrer une Google Map sans extension dans 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

Pré-remplir un formulaire Gravity Form avec des paramètres d’URL

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


                

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

Vous aimez WordPress soutenez WeThinkWP !

Comme vous le savez je suis développeur WordPress et j’essaie de m’impliquer dans la communauté en participant au forum d’entraide, en traduisant plusieurs extension WordPress en Français, en proposant des extensions gratuites sur le dépôt WordPress  et en créant quelques troll sur le Slack WordPress francophone 😉

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.

Soutenez WeThinkWP

Mise à jour du 17 janvier 2018:

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!

Le multisite dans WordPress : Pourquoi? Comment?

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 ».

Un WordPress pour plusieurs site? Pourquoi ne pas passer au mapping de domaine ?

Paramétrer un WordPress multi site – multi domaines chez O2Switch

Le SEO c’est bien… mais faut pas raconter que des bêtises!

Ce matin, au grès de ma veille techno, je suis tombé sur un article d’une pseudo agence de SEO:  prenez au second degré cette lecture

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…

sources:

À lire sur Numerama : Panama Papers : des WordPress et Drupal mal gérés à l’origine d’un piratage ?

https://www.ya-graphic.com/2016/04/cest-wordpress-qui-est-a-lorigine-de-panama-papers/

Un bon point quand même pour l’auteur qui malgré tout sait écrire WordPress!

Création d’une extension dédiée aux Agences Immobilières

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.

Vous avez des idées d’amélioration? dites le moi!

[purchase_link id= »2186″ style= »button » color= »orangered » text= »Ajouter WPCasa Mail Alert au panier »]

 

Loi de finance 2016: Le logiciel libre à besoin de vous!

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.

Je vous invite à lire l’article de linuxfr.org qui relate la situation ainsi qu’a participer au sondage organisé sur Framadate.

Merci à tous 😉

Pourquoi WordPress ?

Souvent on me demande pourquoi utiliser WordPress et pas un autre CMS? La réponse se situe dans l’infographie publiée ce matin par la Marmite.

Il y a le coté développeur… on peut développer toutes sorte de site sous WordPress sans connaitre une panoplie de langage… et ça c’est cool 😉

Il y a aussi le coté utilisateur. Une fois que le client à son back-office… il est quasiment autonome… et ça… il apprécie!

Ensuite vient le fait que je préfère maîtriser une technologie plutôt que bafouiller sur plusieurs…
Infographie : L'année 2015 de WordPress
Merci à
WP Marmite pour cette infographie.