WordCamp Paris 2016… et après ?

Au départ je devais écrire un retour d’information (poke @wolforg) sur le WordCamp Paris.. mais allons de l’avant.. et si vous voulez tout savoir, un résumé complet est publié sur le site : Retour sur WordCamp Paris 2016 !

Pour ceux qui me suivent de très/trop près sur Twitter ont déjà une bride de la suite :)

Comme le montre la photo que j’ai choisie pour cette article ( crédit : Manuel Schmalstieg ) , participer à ce genre d’évènement donne des super pouvoirs (et même sans Kryptonite) .. il ne m’en fallait pas plus pour démarrer un projet qui prenait la poussière : mélanger WordPress et voyages.

En discutant avec Chris Lema (qui était présent au #wcparis), il m’a convaincu de venir au WordCamp San Diego ! C’était pas du tout prévu… mais après tout, bousculer sa zone de confort, cela ne fait pas de mal de temps en temps… au programme, un peu de tourisme (cela sera mon 1er voyage aux « States » ! dans un A380.. on se refuse rien 😉 ) , un peu de co/remote-working (oui j’ai un métier), mais surtout j’espère encore de belles rencontres ! :)

Avant cela, il y aura le Salon des blogueurs de voyages à Bruxelles, et ensuite on enchaine sur le WordCamp Europe Vienna et le TBEX EUROPE ’16 Stockholm.

Sans oublier le WordCamp Lyon en préparation pour septembre !

Un nouveau site est en préparation pour ce projet (voir 2 mais chuuut 😉 ) , le but étant de parler des communautés WordPress un peu partout.. de la Creuse à Jakarta.. si vous voulez en savoir plus et/ou y participer… n’hésitez pas à me contacter ! :)

 

 

 

 

WPTech = WPHumain, une belle première pour moi ! :)

Me voila de retour à la maison après mon grand périple (tout est relatif comparé aux aventures que je lis régulièrement sur certains blogs « voyages ») pour le WPTech 2015.

Si vous voulez savoir ce qu’il s’est passé lors de cet évènement, je vous conseille un très bon résumé réalisé par Alex de WPMarmite ou le site officiel WPtech.

Pour ma part, je voudrais surtout mettre l’accent sur l’aspect humain, car même si le WPtech est un évènement technique dédié à WordPress, les techos, derrière leurs corps de rêve et leurs cerveaux hookés, il y a des hommes et des femmes (encore peu nombreuses) ! :)

Même si vous connaissez pas grand chose en « technique » WordPress, ce genre d’évènement peut vous donner envie d’essayer, et surtout vous faire rencontrer « la communauté WordPress« , qui est le point fort de ce CMS.

Avec trampolinn.com, j’ai partagé la maison d’un très sympathique photographe (vous pouvez retrouver une partie de ses photos sur son site  photokarhu.fr ), avec 5 – non moins sympathiques (enfin sauf un ! 😉 – confrères dans la grande famille WordPress : Aude , Didier , Jérome, Fx , JB . Avant de descendre en covoiturage avec 2 de mes nouveaux amis vers Bordeaux pour retrouver mes associés.

Ce fut aussi pour moi, ma toute première conférence et qui plus est en tant qu’orateur ! Moyennement satisfait de ma prestation (qui a été filmé ! ), mais je n’ai reçu que de bons retours… alors, on va dire que pour une première, cela ne devait pas être si mal :)

Le support de ma conférence se trouve ici : https://bitbucket.org/lipaonline/wp-tech/overview , pour la vidéo et l’ITW…. ça arrive.. patience…

Je tiens à remercier:

Daniel, Willy pour l’organisation (et tous les bénévoles),

Déborah pour l’ITW,

Céline pour le before,

Amanda pour les encouragements,

sans oublier bien sur Isaure et Amaury ,mes ninjas préférés , pour un after fort agréable :)

Pour certains, j’aurai le plaisir de les revoir à Paris pour le WorldCamp , et j’espère à l’année prochaine pour le WPTech 2016 !

WP Tech et autres news…

Cela faisait un bon moment que je n’avais pas publié sur ce blog… le vieil adage du cordonnier vous connaissez ?

Quoi de neuf ?

Pleins de choses.. et d’autres qui vont arriver… je l’espère :)

Depuis maintenant 1 an, je travaille en étroite collaboration avec deux autres freelancers comme moi, Jean-Michel (Jmsil Communication) et Benjamin (Bewod). Avec mes 2 comparses, nous avons déjà réalisé quelques beaux projets… et je ne doute pas que d’autres arriveront très bientôt :)

WP Slovenija

J’ai donné ma première conférence à Ljubljana lors d’un meetup, j’essai de dynamiser la communauté WP en Slovénie (qui est en devenir..).

WP Tech

La « grosse actu » du moment, c’est ma prochaine conférence lors du WP tech à Nantes le 5 décembre !!

J’y parlerai Custom Post Field avec un framework que j’utilise CMB2.

A ce propos, j’ai réservé un appartement grace à mon partenaire (je suis ambassadeur) :  trampolinn.com .

Si vous cherchez un hébergement pour cette évènement, il y a de la place (et c’est gratuit ! ), la réservation est prise du jeudi 3 au dimanche 6.

Il y aura déjà Jean-Bernard Huet, que certains connaissent sur les groupes WP sur Facebook…

(EDIT)

2 nouveaux pensionnaires :

Didier : http://www.wptrads.com/

FX: https://fxbenard.com/

Et deuxième chose, je suis à la recherche d’une solution pour « descendre » sur Bordeaux après la conférence.. Si vous venez de cette région, un covoiturage serait idéal.

 

« Pods pour les nuls » aka. Pods Frontier Auto Display

Une des fonctionnalités intéressantes de Pods, est la facilité avec laquelle on peut afficher un champs personnalisé (Custom Field), aussi bien dans vos articles, pages ou Custom Post Type.

La manière la plus simple d’afficher un champs personnalisé avec Pods, est le shortcode (Pods créé automatiquement un « magic tag »  pour chaque champs), qui ne se limite pas aux simples champs textes, avec le système de template. Pour plus de détails de ce fonctionnement, je vous invite à lire cet article : Tuto Pods : 2. Champs Personnalisés Et Shortcodes.

Si ceci est très pratique, cela peut occasionner quelques erreurs ( oublie, erreur d’orthographe du shortcode…), et n’est toujours adapté à votre besoin.

C’est la qu’intervient le plugin Pods Frontier Auto Display, qui va vous permettre d’afficher vos champs automatiquement selon un template que vous aurez défini.

L’utilisation de ce plugin est très simple. Après avoir activé le module « template » de Pods, créé votre template (comme par exemple un snippet cuisine comme ici : Tuto Pods : 3. Pods Et SEO, vous verrez un onglet supplémentaire lorsque vous modifiez un Pod :

pods-frontier

 

La première case permet d’activer cette fonctionnalité pour ce Pod (on peut donc activer ce plugin au cas par cas sur chaque Pod !).

Il faut renseigner le nom du template, un pour la page « single » (la page de détail), un pour la page archive.

Vous pouvez définir, « after », « before » ou « replace ». (à noter que cette option n’est pas encore présente dans la version 1.0 du plugin, elle vient d’être ajouter à ma demande, il faut attendre la prochaine mise à jour, ou aller la chercher directement sur Gihub).

Que fait le Pods Frontier Auto Display ?

Techniquement, il s’agit d’un filtre sur « post_content », il va afficher votre template, avant, après ou à la place du contenu de votre Pod (article, page ou Custom Post Type, Custom Taxonomie), automatiquement, sans que vous ayez besoin de modifier votre template principal.

Il ne modifie pas le titre ou l’image à la une, si vous en utilisez une. Il « touche » uniquement au « contenu principal » de votre Pod. Vous restez dépendant de votre thème, mais ceux-ci sont de plus en plus personnalisables, cela devrait fonctionner dans la plupart des cas. Si par contre, vous avez besoin d’encore plus liberté, Pods propose aussi ses propres pages, où vous pourrez complètement définir le design de vos pages, sans toucher à votre thème ! .. Mais ceci fera l’objet d’un autre article…

SEO : cocons sémantiques pour les nuls

Les « cocons sémantiques » est une notion que je pratique depuis longtemps, sans vraiment le savoir, et surtout avec une rigueur plus ou moins aléatoire. Les articles ici et la ,puis une discussion sur Parlons Blog et enfin un appel à « témoignage » chez Mitambo m’ont amené à écrire cette article pour démystifier cette notion qui peut paraitre compliquée, mais, pour peu que votre besoin en optimisation ne soit pas extrême (dans le cas contraire, je vous conseille de faire appel à un expert… j’ai des noms si vous voulez…) , est en fait assez simple :)

A travers un exemple concret, sur mon blog eSlovénie, je vais vous montrer UNE (et pas LA)  mise en oeuvre possible de cette notion.

Pré-requis et outils pour le SEO

Il faut tout d’abord avoir une idée clair de son site, ce qu’on veut dire, faire ressentir. Sa concrétisation en site web nécessite des bases en HTML pour le SEO (les balise H1, title…), une assez bonne connaissance du fonctionnement de WordPress (si votre site utilise ce CMS bien sur !), un peu de codage PHP (cela peut se limiter à du copier/coller de codes trouvés dans des tutoriaux… mais je préfère toujours comprendre ce que je fais…) , et connaitre les bons plugins, qui, utilisés avec parcimonie, peuvent être d’un grand secours.

Ensuite, il existe des outils pour vous aider dans ces tâches, et vérifier si vous obtenez ce que vous voulez… car les effets en matière de SEO sont rarement immédiat. voici une liste non exhaustive:

Etapes de la mise en oeuvre

Ré-organisation du blog

J’ai ouvert le blog eSlovénie, sans but précis, au bout d’un an, je me suis retrouvé avec un beau bordel… il fallait réagir.

Le première chose à faire : débordéliser le blog et le réorganiser en fonction de ce que mes potentiels visiteurs recherchent ( on attrape pas les mouches avec du vinaigre… avant que le visiteur puisse lire mes articles, il faut le faire venir… si je parle par exemple d’un lieu que j’affectionne, mais que personne connait, il va falloir jouer « d’artifices SEO » pour le faire découvrir à mon lecteur).

La première source de bordel avec WordPress, est les taxonomies (catégories, tags), je vous invite à lire ces articles : SEO & WordPress : Mots Clés Et Catégories puis Comment Bien Organiser Son Blog Avec WordPress ?

Ensuite, pour identifier ce que recherche les internautes, il y a deux sources principale : Google Trends et les forums spécialisés (lire les questions des membres est une mine d’or ! A vous d’y répondre…). Il y a aussi le Adwords KeywordPlanner, mais je trouve cet outil trop orienté « publicité ».

Pour mon site eSlovénie, deux champs sémantiques en ressortent: les destinations (en particulier : Ljubljana, Bled et Portoroz), et les activités (randonnée, rafting, VTT).

Pour ne pas tout perdre de ce qui a déjà été fait, je vais garder les tags qui concerne les destinations, et supprimer tous les autres…

Nettoyage des pages

Une page web, n’est pas constituée uniquement du contenu de votre page/article WP. Elle contient aussi un header, une sidebar et un footer.. en général. Il faut supprimer tout ce qui pourrait gêner la compréhension de vos pages par les moteurs de recherche, tout en gardant une bonne ergonomie pour vos visiteurs. Pour vérifier à quoi « ressemble » votre page pour Google  comment Google comprend votre page, testez la avec alyze.info

Création d’une Homepage statique

Les homepages que l’ont trouve généralement sur des blogs WP, reprennent vos derniers articles, j’explique dans cet autre article Blog & SEO : Anatomie D’une Homepage Parfaite pourquoi j’ai changé. Pour faire ceci, cela dépend de votre thème. Le mien est géré par des widgets, il y a quelques mois de cela, j’aurai pesté contre le dev, mais depuis que j’ai découvert Pods et ses possibilités en matière de widget, cela est très pratique. Une autre solution est d’utiliser des plugins « Page Builder » pour créer votre page (et d’autres). La dernier est de mettre les mains dans le code, refaire votre page comme vous la souhaitez… mais cela nécessite pas mal de connaissance en PHP et Codex WordPress.

Création des « cocons destinations »

Toujours avec Pods, j’ai créé des Custom Post Type « destinations » comme Ljubljana , pour y mettre toutes les informations relatives à cette destinations, dont les articles du blog, que je peut trier grâce au tag que j’ai conservé. Ce travail n’est pas fini, mais les cocons sont créés, reste à les nourrir pour qu’ils grandissent :). il va falloir aussi relier ces articles à cette page.

Pour donner plus de force aux 3 destinations vedettes, je les ai ajoutés dans le menu principal du site.

Testes et ajustements

Après avoir fait toutes ces modifications, j’ai demandé au plugin Mitambo de parcourir mes pages pour voir le résultat:

mitambo-eslovenie-showcase

Le but premier est atteint, reste maintenant les finitions

Créer un plugin WordPress extensible

A la recherche des bonnes pratiques pour créer un plugin WordPress (je dois revoir le code d’un plugin que j’ai codé il y a +2ans.. à l’époque, j’étais loin de connaitre aussi bien WP que maintenant), je vais vous parler d’un concept au coeur de WordPress, et pourtant assez peu utilisé des développeurs : créer des hooks (filter et action) pour ces propres plugins, et les rendre ainsi extensible.

La littérature en la matière est assez pauvre, je suis tombé sur cette article, qui m’a donné des pistes pour aller plus loin…

Pourquoi créer un plugin extensible ?

Si vous connaissez le principe des thèmes enfants, cela a à peu près les mêmes avantages, celui de permettre à d’autres, de modifier le comportement de votre plugin, sans pour autant toucher au code du plugin, et risquer de tout perdre à chaque mise à jour du plugin.

Ne vous est-il jamais arrivé de trouver le plugin « presque parfait », avec juste un petit « truc » qui ne répond pas à votre besoin ? Que faire dans ce cas ? Demander au développeur qu’il fasse une modification ? Pas sur qu’il ait le temps ou l’envie de le faire… Le refaire développer ? Cela peut couter très cher selon la complexité des modifications… alors que si le créateur du plugin avait prévu des hooks à son plugin, cela aurait été beaucoup plus simple… et si c’est un plugin payant… il vient de bêtement perdre une vente… car OUI, rendre un plugin extensible, c’est vraiment très simple !

Un exemple courant, arrivé très récemment : Sur la homepage du site d’un client, il y a un shortcode de slider reprenant les derniers articles, dans l’admin, on peut choisir de ne sélectionner qu’une catégorie, et le nombre d’article. Mais c’est tout ! Si le client veut filtrer sur une autre taxonomie, ou un Custom Post Type… cela n’est pas possible sans modification du code.

Comment écrire un plugin extensible ?

Pour cela, nous allons utiliser 4 fonctions déjà très utilisées si vous êtes un fan de Captain Hook : add_filter/apply_filter et dans une moindre mesure add_action/do_action. Pour être exhaustif, il y a aussi has_filter/remove_filter, has_action/remove_action, mais il n’est pas nécessaire d’en parler ici, pour expliquer comment cela fonctionne.

Les filtres : add_filter/apply_filter

C’est le concept le plus simple. Un filtre permet de manipuler des données (nombre, chaine, tableau…), typiquement l’exemple du slider, on va pouvoir filtrer les données qui nous intéresse. Cela peut être utile aussi pour modifier un shortcode. Dans l’article COMMENT AFFICHER VOS CUSTOM POST TYPE ? , on utilise le filtre pre_get_posts de la fonction get_posts de WordPress.

Les actions : add_action/do_action

Cette fois, on ne manipule pas des données, mais on réalise de réelles actions ( envoi d’un email, suppression d’un utilisateur, affichage d’un bouton…).

Passons à un cas concret, c’est souvent plus simple. Admettons que vous venez de créer un plugin pour gérer un petit catalogue de livres. Vous avez créé une widget pour afficher une liste de livres, le code pourrait ressembler à cela:

Avec ce type de code, il va falloir prévoir tous les cas de figures dans la configuration de la widget (ce qui est assez fastidieux), et le code d’affichage n’est pas modifiable. Nous allons ajouter des filtres et des actions partout ou cela semble nécessaire (vaut mieux en mettre trop que pas assez, mais pas la peine d’en mettre la où cela semble vraiment superflu.. de plus, rien ne vous empêche de faire des mises à jour de votre plugin (ou thème, cette méthode est aussi utilisable pour vos fonctions personnelles de votre thème), avec de nouveaux filtres/actions

Voici ce que nous allons « hooker » (la liste n’est pas exhaustive):

  • Modifier les paramètres de la requête WP_Query (-> filtre)
  • Ajouter du code HTML avant chaque livre, pour ajouter une vignette ( -> action)
  • Ajouter du code HTML après chaque livre, pour ajouter l’auteur ( -> action)
  • Modifier <h3 class= »widget_book_title »> , pour le SEO  (-> filtre)

Maintenant, si on veut afficher les livres d’un auteur en particulier :

Pour ajouter une vignette à chaque livre

Voila, maintenant à vous de jouer, plus aucune excuse pour ne pas écrire des plugins extensifs… le plus chiant fastidieux est d’écrire une documentation claire pour que les utilisateurs puissent se servir au mieux de votre plugin.

Plugin WordPress : TGM Plugin Activation

Aujourd’hui, je vais vous parler d’un plugin, ou plus exactement d’une classe que j’ai découvert il y a quelques temps, mais je ne l’avais pas jusqu’alors mise en oeuvre sur un site WordPress.

De quoi s’agit-il ?

TGM Plugin Activation, va vous permettre d’inclure des plugins à votre thème, ou à votre propre plugin.

Installation:

Il suffit d’inclure le fichier PHP qui contient la classe, et d’ajouter un hook à votre fichier functions.php s’il s’agit d’un thème, ou au fichier principal de votre plugin.

Quels plugin peut-on ajouter ?

Tous ! Aussi bien des plugins inclus dans votre thème, ceux sur votre serveur (ou tout autre endroit accessible via internet), ou ceux présent dans le répertoire officiel de WordPress.

2 choses à ne pas oublier tout de même :

  • Vérifiez les possibles incompatibilités entre plugins
  • Ne pas inclure des plugins pouvant avoir des failles de sécurité

Cette classe est téléchargeable sur Github : TGM-Plugin-Activation

Tips WordPress : Comment afficher vos Custom Post Type ?

Pour améliorer votre blog/site, vous avez créé des Custom Post Type (avec ou sans Pods), c’est très bien.. si si je vous assure ! 😉

Maintenant, à moins que vous vouliez être le/la seul(e) à les voir (pourquoi pas ?), il va falloir les afficher non ?

Avant, je fonçais tête baissée (pas sur que ça aille plus vite mais bon…) dans le code du template pour modifier les « loop » de WordPress…

Mais ça c’était avant que je devienne pote avec Captain Hook ! :)

Oui, avant faire quoique se soit sous WordPress, pensez à regarder si un hook pourrait vous rendre service !

Et c’est bien sur le cas pour nos CPT…

Il s’agit du hook « pre_get_posts« , qui va nous permettre de reprendre la main, avant que WordPress ne lance sa requête.

A noter que la fonction set nous permet de modifier n’importe quel paramètre de notre requête, pour plus de détails, reportez-vous à la classe WP_Query

Le problème avec ce code, c’est qu’il va modifier toutes les requêtes de votre site ! Il faut ajouter des restrictions à l’emploi de cette fonction.

ex: afficher les CPT uniquement sur la Home, et n’affecter que la requête principale (il peut y avoir plusieurs requêtes sur une même page !)

Pour ajouter nos CPT à notre flux RSS, on ajoutera la condition is_feed()… ( Conditional Tag)

Vous trouverez certainement une utilisation de ce hook… c’est une bombe non ?? :)

Thèmes WordPress : Creativemarket vs. Themeforest

On ne présente plus Themeforest… En fait si, je vais vous présenter Themeforest (on a tous commencé un jour…), il s’agit d’un site où on peut acheter – entre autres – des thèmes pour WordPress. Il est devenu une référence en la matière, même s’il en existe bien d’autres.. et c’est d’ailleurs le propos de ce billet, vous présenter Creativemarket que j’ai découvert récemment.

A première vu, rien ne distingue vraiment l’un de l’autre, et à regarder de plus près, cet outsider mérite que l’on s’y intéresse. Ce type de site s’adresse à plusieurs types de public : Webmaster/Blogger , webmaster/affilié , webdesigner. Je vais comparer ces 2 sites pour chaque cas.

Webmaster/Blogger

Lorsque l’on recherche un thème pour son site (ou celui d’un client), avoir une nouvelle source un peu moins connue, permet d’avoir une certaine originalité, et évite d’avoir le même thème que tout le monde. Et paradoxalement, même si le nombre de thème est largement supérieur sur TF, je trouve que le choix est plus grand et diversifié sur CM.

En tant que webmaster « pro » (cad. je fais des sites pour mes clients), j’avoue en avoir un peu marre des « Multi-purpose Theme » de TF, de vrais usines à gaz fourre tout (le SUV du thème 😉 , dont 90% des fonctionnalités ne seront jamais utilisés !

Même si le prix est pour moi un critère secondaire, sur TF, pratiquement tous les thèmes « un minimum chiadés » sont à env. 50$, sur CM les prix varient de 2$ à 150$, certes en 2 et 150 dollars, vous n’aurez pas les mêmes fonctionnalités, mais cela peut vous suffire, pour un simple blog (surtout quand on débute) il vaut mieux se concentrer sur le contenu et l’ergonomie

Webmaster/affilié

Vous avez un site dont l’audience est plutôt constituée d’autres webmasters (Si vous avez un site de mode, laissez tomber ce genre d’affiliation, cela ne vous rapportera rien !) et vous voulez gagner un peu d’argent avec celui-ci, l’affiliation en est un bon moyen.. Si cela est bien fait évidemment.

La encore, je trouve le système de CM plus avantageux avec 10% des ventes pendant 1 an, plutôt que 30% sur le premier dépôt sur TF. Enfin, cela dépend du type de filleul que vous avez, mais je trouve ça plus « honnête » de reverser une commission sur vos ventes.

Autre chose non négligeable, lorsque vous naviguez sur CM (en étant connecté à votre compte) , les liens de partages sur les réseaux sociaux sont automatiquement trackés avec votre identifiant. Très pratique avec les « Free Goods Of The Week », en 2 clics vous avez un outils de promotion très puissant :)

Webdesigner

Si vous êtes créateur de thèmes WordPress (mais pas seulement, ce site propose aussi des thèmes Joomla, Drupal, des templates HTML, des illustrations, des plugins Photoshop…)…

Creativemarket vous reverse 70% de vos ventes, et ce même si vous ne leur donnez pas l’exclusivité ! Libre à vous de vendre vos créations ailleurs, sur votre site.. ou sur TF également !

De plus, pour vendre, vous ne serait pas obligé de succomber à la mode du « Multi-purpose Theme ».

Conclusion

J’espère vous avoir donné envie de découvrir Creativemarket, même sur Themeforest restera encore pour quelques temps une référence je pense, il est toujours intéressant d’aller voir le thème est plus vert ailleurs 😉