Ajouter un champs Google Fonts dans Advanced Custom Fields (ACF)

Ajouter Google Fonts dans Advanced Custom Fields - ACF
WordPress Lecture 4 minutes • 17 avril 2020

S'il y'a bien une extension WordPress dont je ne peux me passer c'est Advanced Custom Fields !
Monument historique et incontournable de la communauté WordPress, il cumule une dizaine d'années d'existence et des millions d'utilisateurs actifs. Merci Elliot, t'es un chic type.
Les remerciements étant faits, je vous partage maintenant mon expérience.

Pour un projet de création de thème sur-mesure, ma cliente me fait la demande de pouvoir choisir librement ses polices d'écriture dans l'administration WordPress. En précisant que faire son choix parmi les Google Fonts serait génial !

Avouons qu'avoir la main sur la police d'écriture des titres et des paragraphes en 2 clics est plutôt hyper pratique.
Bien emballé, je me précipite donc dans l'interface de l'extension ACF (c'est son petit nom) et là oooooh... déception. Il n'existe pas de champs ACF pour les Google Fonts... damned ! 🙄

ACF: Google Fonts Selector

Je mène mes recherches et découvre alors l'existence de l'extension WordPress ACF: Google Font Selector, créée par Daniel Pataki et qui permet d'ajouter un champs Google Fonts dans Advanced Custom Fields.
Mais voilà, l'extension est abandonnée par son auteur depuis avril 2015 et les commentaires de la communauté sont quasi unanimes : l'extension ne marche plus et provoque des erreurs...
C'est une deuxième douche froide 🙁

ACF Google Font Selector pour WordPress

 

Réparation de la solution ACF: Google Fonts Selector

Je retrousse mes manches et part à la résolution des erreurs présentes dans cette extension tout en m'appuyant sur les travaux de debug réalisés par Matiyin sur GitHub.
Résultat : je parviens à une version finale corrigée qui fonctionne parfaitement avec WordPress 5.4 ! 😀

Télécharger l'extension corrigée

Après avoir téléchargé l'extension corrigée ci-dessus, pensez à l'ajouter à vos extensions WordPress avant de passer à la suite de la configuration.
Choisir Extensions > Ajouter puis cliquer sur le bouton Téléverser une extension.

Activer Web Fonts Developer API

Il est ensuite nécessaire d'activer le service Web Fonts Developer API dans votre compte Google Cloud Platform. Pour cela, on recherche avec les mots-clés "Web Fonts" puis on active le service.

Bibliothèque d'API Google Cloud Platform
Rechercher Webfonts dans la bibliothèque d'API Google Cloud Platform
Activer Web Fonts API dans Google Cloud Platform

Créer une clé d'API Google

Il est ensuite nécessaire de créer une clé d'API Google pour faire fonctionner les Google Fonts. Pour cela, rendez-vous dans la section API et services et choisir Créer des identifiants > Clé API

Créer une clé API Google Cloud Platform

Je vous conseille ensuite d'éditer la clé d'API en cliquant sur le petit crayon. Puis de renseigner les champs suivants :
- Nom : choisir quelque chose d'explicite afin de se souvenir pour quel projet est utilisée cette clé d'API.
- Cocher Référents HTTP (sites Web) pour restreindre l'utilisation de la clé à un usage web.
- Puis préciser l'url de votre site dans Restrictions liées aux sites Web.
- Cocher Restreindre la clé pour restreindre l'utilisation de la clé.
- Puis sélectionner Web Fonts Developer API.

Paramétrage et sécurisation clé API Google

Copier le champs API Key puis enregistrer.

Dernière étape, coller la clé dans votre WordPress. Pour cela, aller dans Réglages > Google Font Selector et y coller la clé d'API.
Tout est en place ! :mrgreen:
Coller la clé d'API dans WordPress Google Font Selector

Utiliser le champs ACF: Google Fonts Selector

Ce nouveau champs s'utilise de la même façon que les autres champs ACF. Il faut simplement créer un nouveau champs via le menu ACF, puis choisir Google Font Selector pour le Type de champ.

Créer un champs ACF Google Font Selector

Le résultat est très satisfaisant, avec un aperçu direct de la police d'écriture sélectionnée et un usage redoutablement simple !

Utilisation champs ACF Google Font

Pour aller plus loin, vous pouvez également modifier les fichiers de l'extension.
La plupart des éléments intéressants à personnaliser se trouvent dans le fichier acf-google_font_selector-v5.php, ou il est par exemple possible de changer le texte de prévisualisation "Aperçu de la police d'écriture" ou bien y ajouter différents éléments d'aperçu tels qu'on titre, un paragraphe, un bouton ... ligne 137 à 139 du fichier.

Cette article vous a dépanné ? Dîtes-le en commentaire, c'est toujours un plaisir de vous lire.

 

Édit 09/01/2024
Mis à jour pour compatibilité PHP 8 et ACF 6


Si cet article vous a aidé, lâchez votre plus bel applaudissement en remerciement ! 🤗