Rendre un site WordPress SEO friendly : mon aventure avec un plugin maison 😎

Comment rendre un site WordPress SEO-friendly avec des données dynamiques (et un plugin PHP)

Quand on est dĂ©veloppeur front-end, rĂ©cupĂ©rer des donnĂ©es depuis une API et les injecter dans le DOM, c’est un peu la base.
Mais attention, cette mĂ©thode n’est pas toujours trĂšs SEO friendly, car Googlebot et ses amis ne peuvent pas voir les donnĂ©es injectĂ©es via JavaScript. Et ça, pour un site qui cherche Ă  ĂȘtre bien rĂ©fĂ©rencĂ©, c’est un vrai problĂšme. 😬

Donc récapitulons :

Objectif : afficher des donnĂ©es externes de façon dynamique tout en gardant un Ɠil sur le SEO
Contrainte : pas question de compter uniquement sur du JS, il faut une solution cÎté serveur

La solution ?
Un bon vieux plugin WordPress en PHP pour rĂ©cupĂ©rer les donnĂ©es et les intĂ©grer proprement dans le HTML, dĂšs le rendu serveur. Challenge accepted ! đŸ’Ș


Étape 1 : CrĂ©er un plugin WordPress (oui, c’est pas si compliquĂ© !)

Avant tout, il faut crĂ©er un plugin WordPress. Pas de panique, c’est plus facile qu’il n’y paraĂźt.

  1. Dans le dossier wp-content/plugins, crée un dossier pour ton plugin (par exemple, plugin-api-seo).
  2. CrĂ©e un fichier PHP Ă  l’intĂ©rieur de ce dossier, par exemple plugin-api-seo.php.
  3. Ouvre ce fichier et ajoute ce code :
<?php
/**
 * Plugin Name: Plugin API SEO
 * Description: Un plugin pour récupérer des données depuis une API et les afficher SEO-friendly.
 * Version: 1.0
 * Author: Ton Nom
 */

// EmpĂȘcher l’accĂšs direct
if ( !defined( 'ABSPATH' ) ) {
    exit;
}

Avec ça, tu as ton plugin de base. Facile, non ? (n’oublie pas de l’activer dans l’administration du WP)


Étape 2 : RĂ©cupĂ©rer les donnĂ©es en PHP

Maintenant que ton plugin est prĂȘt, il est temps de rĂ©cupĂ©rer des donnĂ©es depuis l’API.
Pour ça, on va utiliser la fonction wp_remote_get() qui nous permet de faire une requĂȘte HTTP en PHP.
Voici comment procéder :

phpCopierModifierfunction mon_plugin_fetch_data() {
    $response = wp_remote_get('https://exemple.com/api/data');
    if (is_wp_error($response)) {
        return 'Erreur lors de la récupération des données';
    }
    $body = wp_remote_retrieve_body($response);
    return json_decode($body, true); // On récupÚre les données en format tableau
}

Ça y est, les donnĂ©es sont rĂ©cupĂ©rĂ©es et prĂȘtes Ă  ĂȘtre utilisĂ©es !


Étape 3 : PrĂ©parer les donnĂ©es pour les afficher

Maintenant qu’on a les donnĂ©es, il faut les prĂ©parer avant de les afficher sur le site.
Voici un exemple de préparation pour les afficher sous forme de liste:

function mon_plugin_prepare_data($data) {
    if (empty($data)) {
        return 'Aucune donnée disponible';
    }

    $output = '<ul class="mes-donnees">';
    foreach ($data as $item) {
        $output .= '<li>' . esc_html($item['titre']) . '</li>'; 
    }
    $output .= '</ul>';

    return $output;
}

LĂ , on a les donnĂ©es prĂȘtes Ă  ĂȘtre affichĂ©es dans un joli format HTML !


Étape 4 : CrĂ©er un bon vieux shortcode

C’est l’étape magique qui va permettre d’afficher ces donnĂ©es n’importe oĂč dans ton contenu WordPress.
Avec un shortcode, il suffit d’ajouter une petite balise dans une page ou un article, et hop, les donnĂ©es s’affichent.

function mon_plugin_afficher_donnees() {
    $data = mon_plugin_fetch_data(); // Récupération des données
    return mon_plugin_prepare_data($data); // Préparation et retour des données
}

add_shortcode('afficher_donnees', 'mon_plugin_afficher_donnees');

Il suffit maintenant d’ajouter [afficher_donnees] dans n’importe quel article ou page, et les donnĂ©es s’affichent ! Google les verra, et ton SEO est optimisĂ©. 🎯


Bonus : Un peu de mise en cache API

Pour Ă©viter de surcharger l’API Ă  chaque visite, on peut mettre en place un systĂšme de cache.
Ça permet d’éviter de refaire la mĂȘme requĂȘte trop souvent et de rendre le site plus rapide.
Voici comment ajouter un cache simple avec set_transient() et get_transient() :

function mon_plugin_fetch_data_cached() {
    $cached_data = get_transient('mon_plugin_cache');
    if ($cached_data !== false) {
        return $cached_data; // Si les données sont en cache, on les récupÚre
    }
    $data = mon_plugin_fetch_data(); // Sinon, on va chercher les données
    set_transient('mon_plugin_cache', $data, HOUR_IN_SECONDS); // Mise en cache pendant 1 heure
    return $data;
}

Avec ce petit ajout, ton site sera plus rapide, et tu rĂ©duiras le nombre de requĂȘtes envoyĂ©es Ă  l’API.
Les visiteurs (et les robots Google) vont adorer ! 🎈


Conclusion

VoilĂ , avec ce plugin simple, tu peux afficher tes donnĂ©es venant de l’API tout en optimisant le SEO de ton site. Tu combines la flexibilitĂ© du JavaScript pour les donnĂ©es dynamiques et l’optimisation du rĂ©fĂ©rencement avec PHP cĂŽtĂ© serveur. 🌟

Si toi aussi tu veux rendre ton site plus SEO-friendly tout en affichant des donnĂ©es en temps rĂ©el, n’hĂ©site pas Ă  crĂ©er un petit plugin personnalisĂ©. C’est un petit dĂ©fi sympa qui peut vraiment faire la diffĂ©rence pour le SEO ! 😉

0 0 votes
Évaluation de l'article
guest
0 Commentaires
Commentaires en ligne
Afficher tous les commentaires