Slide 1

Slide 1 text

Un back-office WordPress pratique & efficace… c’est (encore) possible ? WP Valence #5 – 3 mai 2017

Slide 2

Slide 2 text

Plop. Moi c’est Jb, responsable technique WordPress chez Whodunit Développeur full-stuff depuis 10 ans sur WP, thèmes sur-mesure, extensions officielles ou pas, traducteur, responsable de la maintenance d’un gros parc de sites web… amoureux des standards, de la qualité web & de la communauté WP. @audrasjb | jeanbaptisteaudras.com | whodunit.fr new : keepmywp.com

Slide 3

Slide 3 text

Pour la p’tite histoire ● 2005-2008 : customisation de thèmes du repo et découverte progressive du codex et des fonctions natives WP ● 2009-2011 : conception d’un starter thème efficace et adapté à la clientèle ● 2010-2015 : utilisation d’un thème WP sans design fixe et développé en amélioration continue, avec un back-office agissant en surcouche ● 2016 : houdonite? ○ conflit dans mon ancienne agence ; départ non sans mal de toute l’équipe vers de nouveaux horizons, pour ma part avec de nombreux partis pris techniques (et aussi quelques préjugés ^^) ○ Whodunit : une clientèle beaucoup plus diversifiée, mais de gros projets poussant à adopter une démarche réflexive : ■ Qu’est-ce que c’est qu’un bon site WordPress ? ■ Qu’est-ce que c’est qu’un bon back-office WP ? ■ Est-ce qu’il y a des règles universelles ?

Slide 4

Slide 4 text

tl;dr : un bon back-office WP c’est… ● Un back-office où le rédacteur retrouve ses petits : charté (mais pas trop), respectant les règles et wording métier… ● Un back-office bien rangé et logique : chaque chose est à sa place et est affichée dans un ordre logique dans un processus de rédaction ● Un back-office sans éléments inutiles : si ce n’est pas utilisé ça ne devrait pas être affiché ● Un back-office respectueux des standards natifs WP : autant utiliser ce qui existe, et si possible ne pas le casser :)

Slide 5

Slide 5 text

Un back-office où que je retrouve mes petits ● Mes règles métiers sont respectées ○ Au niveau des types de contenus ou des champs personnalisés, les éléments doivent correspondre à ma logique métier ○ Les wordings correspondent à ceux de mon métier : le nommage des contenus et des champs doivent utiliser mes conventions ● Les éléments du BO sont traduits dans ma langue ○ Le thème doit être traduit (ou traduisible), les plugins également ○ Il y a des outils pour effectuer les traductions comme Zanto, mais le mieux est d’utiliser la traduction officielle WordPress (GlotPress génère automatiquement un package de langues à partir du moment où les chaînes traduites sont validées par un GTE ou un PTE) ● Les éléments sont chartés ○ Custom login, un peu de personnalisation BO ○ Mais attention à respecter WP ! Un back-office tout pété dans 2 ans ce serait dommage :)

Slide 6

Slide 6 text

Un back-office bien rangé et logique ● L’ordre des éléments dans le menu est logique : ○ tableau de bord ○ médias ○ types de contenus ○ apparence ○ extensions ○ outils ○ réglages ○ internationalisation / traduction ○ options spécifiques aux plugins touchant à WP dans son ensemble. ● Cela doit être prévu en amont de la construction du site ● Puis pendant le développement / montage du site ● Puis si c’était impossible avant, revu lors de la recette, soit par le code, soit par une extension comme Admin menu editor qui permet de modifier l’ordre et le rangement des éléments

Slide 7

Slide 7 text

Un back-office sans éléments inutiles ● Votre site n’utilise pas les étiquettes ou les commentaires : on vire ! ● Les extensions ajoutent souvent tout un tas d’éléments inutiles ● Même WordPress affiche des trucs que l’on peut juger inutiles, comme le Planet ou certains écrans de réglages Si un élément ou une fonctionnalité n’a aucune utilité, il faut la supprimer ! ● Soit par le code (thème ou plugin maison) ● Soit par une extension comme Admin menu editor ou autre

Slide 8

Slide 8 text

Un BO respectueux des standards WP Le CMS dispose : ● de guidelines : RTFM cher développeur :) → WordPress developer handbooks ● d’une charte graphique back-office → plugin pour afficher les classes CSS BO ● de fontes icônes et autres assets → préférer les dashicons à vos images :) ● de librairies JS → WP utilise : jQuery/jQuery UI, TinyMCE ou encore Plupload, on ne charge donc pas MooTools, FCK Editor ou FineUploader ! + d’infos ● d’éléments fonctionnels pré-configurés comme des tableaux, des éléments de formulaires, des listes… c’est pas pour les prunes :) En gros, ceci est un message aux développeurs : toujours préférer les éléments natifs aux pièces rapportées !

Slide 9

Slide 9 text

Les thèmes et extensions

Slide 10

Slide 10 text

Une page d’option pas très raccord avec WP A lire : https://delipress.io/designer-pour-wordpress/

Slide 11

Slide 11 text

Alerte! Alerte! Clique ici ! Achète ceci ! Ici, le plugin respecte un peu la charte WP, mais quelle horreur !

Slide 12

Slide 12 text

SecuPress est déjà moins intrusif :) (et beaucoup plus beau !) Mais il s’affranchit des règles WP…

Slide 13

Slide 13 text

Keep my WP, un entre-deux :)

Slide 14

Slide 14 text

Une utilisation discutable des dashicons, du menu admin, des plugins qui se mettent n’importe où…

Slide 15

Slide 15 text

L’éditeur visuel

Slide 16

Slide 16 text

Mon “ami” Visual Composer :’( En gros, en plus d’apprendre WP, le client doit apprendre Visual Composer qui a sa propre interface (complexe en plus)

Slide 17

Slide 17 text

Pourquoi faire simple quand on peut faire compliqué… Tout ça pour finalement coller l’éditeur WP natif… :’((

Slide 18

Slide 18 text

Si c’était juste pour gérer le colonnage il y a plus simple : Advanced WP Columns

Slide 19

Slide 19 text

Sélecteur de styles et de formats Utiliser les sélecteurs natifs pour placer les choses – vraiment – utiles. \o/

Slide 20

Slide 20 text

Pour trier les pages, Simple Page Ordering Rien de plus relou que d’avoir une liste de page alphabétique : rendez-moi mon arborescence !

Slide 21

Slide 21 text

L’exemple du multilingue

Slide 22

Slide 22 text

WPML, un plugin “hyper clair” :D

Slide 23

Slide 23 text

Sinon utilisez Polylang c’est mieux :)

Slide 24

Slide 24 text

ACF

Slide 25

Slide 25 text

ACF : gestion de l’ordre des champs ça parait tout bête mais faire en sorte que les champs s’affichent dans un ordre logique, c’est quand même mieux ^^

Slide 26

Slide 26 text

ACF : assignation des champs Et si en plus on peut les afficher uniquement là où on en a besoin c’est encore mieux !

Slide 27

Slide 27 text

ACF : réglages généraux du groupe de champs Et si en plus on les positionne au bon endroit et qu’on supprime les trucs inutiles, alors là c’est parfait ^^

Slide 28

Slide 28 text

Attentions aux repeater VS CPT :) Si vous avez plus de 5 ou 6 éléments dans un repeater, vous gérez un contenu à part entière devez utiliser un custom post type ! Un repeater doit avoir un nombre de champ maximum limité et paramétré dans ACF ! Sinon c’est souvent que l’architecture de l’information n’est pas bien conçue…

Slide 29

Slide 29 text

De la personnalisation

Slide 30

Slide 30 text

Un login personnalisé c’est bien… Erident Custom Login and Dashboard Permet d’obtenir une page de login chartée, ça c’est plutôt sympa :)

Slide 31

Slide 31 text

Mais trop c’est trop :) Cherchez l’erreur :)

Slide 32

Slide 32 text

La personnalisation en mode barbare

Slide 33

Slide 33 text

(sur github) Et en mode tranquille :)

Slide 34

Slide 34 text

Quelques bonnes adresses :)

Slide 35

Slide 35 text

Extensions ● Multilingue : Polylang + Theme strings translation ● Customisation du login : Erident custom login and dashboard ● Types de contenus personnalisés : Custom Post Type UI ● Champs personnalisés : ACF ● Editeur visuel : Advanced WP Columns, Tinymce Advanced… et les plutôt “bons” constructeurs de pages comme Beaver Builder ou le récent Elementor ● Une meilleure gestion en BO : Simple page ordering, Admin menu editor ● Les plugins SEO… aucun ? ou sinon ACF ? :D… bon ok Yoast mais bon :((((

Slide 36

Slide 36 text

On en discute ? :)