====== GEO Bot Monitor ======

[[https://dl.ticoet.me/downloads/1-SEO-GEO/geo-bot-monitor.zip|Télécharger le plugin]]

  * **Version** : 1.1.0
  * **Licence** : GPL2+
  * **Compatibilité** : WordPress 5.8+, PHP 7.4+

> Plugin WordPress de surveillance et gestion des robots visitant votre site, avec outils de blocage et intégration GEO.

===== Description =====

**GEO Bot Monitor** surveille, catégorise et permet de bloquer les robots qui visitent votre site WordPress : moteurs de recherche (SEO), IA génératives (GEO), réseaux sociaux, outils SEO et podcasts.

===== Fonctionnalités principales =====

==== Surveillance des bots ====

  * **Détection automatique** de 80+ robots avec signatures actualisées
  * **Catégorisation** : SEO, GEO/IA, Réseaux sociaux, Outils SEO, Podcast, Interne, Autres
  * **Tableau de bord** avec statistiques en temps réel
  * **Graphiques d'évolution** par période
  * **Historique** des visites par bot et par page

==== Catégories de bots détectés ====

^ Catégorie ^ Exemples ^
| **SEO** | Googlebot, Bingbot, Applebot, YandexBot, DuckDuckBot |
| **GEO / IA** | GPTBot, Claude-Web, PerplexityBot, Google-Extended, CCBot |
| **Outils SEO** | MozBot, AhrefsBot, SemrushBot, MJ12bot, Screaming Frog |
| **Réseaux sociaux** | Twitterbot, LinkedInBot, WhatsApp, Discordbot |
| **Podcast** | Podchaser, Spotify, Apple-Podcasts, Overcast |
| **Interne** | WordPress-Cron, GEO-Audit-Bot, Jetpack |

==== Blocage des bots ====

  * **Interface de gestion** pour bloquer/autoriser chaque bot
  * **Génération automatique** des règles de blocage :
    * ''robots.txt'' : Directives Disallow
    * ''.htaccess'' : Règles RewriteCond (blocage serveur)
    * ''llms.txt'' : Format spécifique IA
  * **Application directe** au fichier robots.txt du site
  * **Détection** des bots déjà bloqués dans robots.txt existant

==== Intégration GEO Authority Suite ====

Si le plugin **GEO Authority Suite** est installé :

  * Synchronisation automatique avec le fichier ''llms.txt''
  * Ajout des directives de blocage IA dans la section dédiée
  * Cohérence entre robots.txt et llms.txt

==== Export des données ====

  * **CSV** : Export complet ou par période
  * **PDF** : Rapport formaté
  * **Markdown** : Format texte structuré
  * **API REST** : Accès programmatique aux données

---

===== Installation =====

  - Téléchargez le plugin
  - Uploadez dans ''/wp-content/plugins/geo-bot-monitor/''
  - Activez depuis **Extensions > Extensions installées**
  - Accédez au menu **Bot Monitor** dans l'administration

---

===== Pages d'administration =====

^ Page ^ Description ^
| **Tableau de bord** | Vue d'ensemble et statistiques |
| **Liste des bots** | Historique détaillé par robot |
| **Blocage** | Gestion des autorisations et génération de règles |
| **Export** | Export des données (CSV, PDF, Markdown) |
| **Réglages** | Configuration du plugin |

---

===== Blocage des bots =====

==== Interface de blocage ====

La page **Bot Monitor > Blocage** permet de :

  * Voir la liste de tous les bots détectés
  * Identifier leur statut actuel (Autorisé / Bloqué)
  * Bloquer ou autoriser individuellement chaque bot
  * Générer les codes de blocage

==== Méthodes de blocage ====

=== robots.txt ===

Le fichier ''robots.txt'' indique aux robots respectueux les pages à ne pas crawler.

<code>
# Règles de blocage générées par GEO Bot Monitor
# Date: 2026-02-23 10:00:00

# Bloquer MJ12bot
User-agent: MJ12bot
Disallow: /

# Bloquer AhrefsBot
User-agent: AhrefsBot
Disallow: /
</code>

**Avantages** : Simple, standard, respecté par les bots légitimes.
**Limites** : Les bots malveillants peuvent ignorer ces directives.

=== .htaccess (Apache) ===

Blocage au niveau serveur, plus strict.

<code apache>
# Règles de blocage générées par GEO Bot Monitor
<IfModule mod_rewrite.c>
RewriteEngine On

# Bloquer MJ12bot
RewriteCond %{HTTP_USER_AGENT} MJ12bot [NC]
RewriteRule .* - [F,L]
</IfModule>
</code>

**Avantages** : Blocage effectif, le bot reçoit une erreur 403.
**Limites** : Nécessite Apache avec mod_rewrite.

=== llms.txt ===

Format spécifique pour les crawlers IA (standard llmstxt.org).

<code>
# Bots IA bloqués
User-agent: GPTBot
User-agent: CCBot

# Règles
Disallow: /
</code>

==== Détection automatique ====

Le plugin détecte les bots déjà bloqués dans votre ''robots.txt'' existant :

  * Lecture du fichier robots.txt actuel
  * Analyse des directives User-agent / Disallow
  * Affichage du statut "Bloqué" ou "Autorisé" pour chaque bot

---

===== Intégration GEO Authority Suite =====

Si **GEO Authority Suite** est installé sur le même site :

==== Synchronisation llms.txt ====

Quand vous bloquez un bot IA via GEO Bot Monitor :

  - Le plugin détecte GEO Authority Suite
  - Propose d'ajouter le blocage dans le ''llms.txt'' généré
  - Les directives sont ajoutées dans la section "Crawlers IA bloqués"

==== Exemple de sortie llms.txt ====

<code>
## Crawlers IA bloques

Les crawlers IA suivants ne sont pas autorises a indexer ce site :

- **GPTBot** (User-Agent: `GPTBot`)
- **CCBot** (User-Agent: `CCBot`)

### Directives de blocage

User-agent: GPTBot
Disallow: /

User-agent: CCBot
Disallow: /

Ces directives sont egalement presentes dans le fichier robots.txt.
Gere par : GEO Bot Monitor v1.1.0
</code>

---

===== API REST =====

==== Endpoints disponibles ====

<code>
GET /wp-json/geo-bot-monitor/v1/stats
GET /wp-json/geo-bot-monitor/v1/bots
GET /wp-json/geo-bot-monitor/v1/visits
</code>

==== Exemple de réponse ====

<code javascript>
{
  "total_visits": 12474,
  "categories": {
    "seo": 6500,
    "geo_ai": 1,
    "social": 2,
    "other": 5971
  },
  "top_bots": [
    {"name": "Moz", "visits": 6179},
    {"name": "Unknown Bot", "visits": 5960}
  ]
}
</code>

---

===== Signatures de bots =====

Le plugin inclut des signatures pour 80+ robots :

==== Moteurs de recherche (SEO) ====

  * Googlebot, Googlebot-Image, Googlebot-Video, Googlebot-News
  * Bingbot, BingPreview
  * YandexBot, YandexImages
  * Baiduspider
  * DuckDuckBot
  * Applebot

==== Bots IA (GEO) ====

  * GPTBot, ChatGPT-User (OpenAI)
  * Claude-Web, ClaudeBot (Anthropic)
  * PerplexityBot
  * Google-Extended
  * CCBot (Common Crawl)
  * Bytespider (ByteDance)
  * Meta-ExternalAgent
  * Amazonbot

==== Outils SEO ====

  * MozBot, rogerbot
  * AhrefsBot
  * SemrushBot
  * MJ12bot (Majestic)
  * DotBot
  * Screaming Frog
  * SEOkicks, Seobility, Sistrix

==== Réseaux sociaux ====

  * Twitterbot
  * LinkedInBot
  * facebot, FacebookBot
  * WhatsApp
  * Discordbot
  * TelegramBot
  * Slackbot
  * Pinterest

==== Podcast ====

  * Podchaser
  * Spotify
  * Apple-Podcasts (AppleCoreMedia, iTunes)
  * Google-Podcasts
  * Overcast
  * Pocket Casts
  * Castro
  * Deezer

==== Internes ====

  * WordPress-Cron
  * GEO-Audit-Bot
  * Jetpack

---

===== Cas d'utilisation =====

==== Surveiller l'activité IA ====

Identifiez quels crawlers IA visitent votre site et à quelle fréquence.

==== Bloquer les bots indésirables ====

Bloquez les bots SEO tiers (Moz, Ahrefs, MJ12bot) qui consomment de la bande passante sans apporter de valeur directe.

==== Optimiser pour le GEO ====

Vérifiez que les bots IA (GPTBot, Claude-Web) accèdent correctement à vos contenus optimisés.

==== Mesurer l'impact ====

Comparez l'activité des bots avant/après modifications pour valider l'effet de vos optimisations GEO.

---

===== Changelog =====

==== Version 1.1.0 (Février 2026) ====

  * **Nouveau** : Système de blocage des bots
  * **Nouveau** : Génération de règles robots.txt, .htaccess, llms.txt
  * **Nouveau** : Application directe au robots.txt du site
  * **Nouveau** : Détection des bots déjà bloqués
  * **Nouveau** : Intégration avec GEO Authority Suite (llms.txt)
  * **Nouveau** : Catégorie Podcast (Podchaser, Spotify, Apple Podcasts...)
  * **Nouveau** : Signatures MozBot et MJ12bot améliorées
  * **Amélioration** : Détection Unknown Bot (distinction WP-Cron, internes)
  * **Amélioration** : Interface de blocage avec statut en temps réel

==== Version 1.0.0 (Janvier 2026) ====

  * Version initiale
  * Détection et catégorisation des bots
  * Tableau de bord et statistiques
  * Export CSV, PDF, Markdown
  * API REST

---

===== Ressources =====

  * [[https://schema.org/|Documentation Schema.org]]
  * [[https://developers.google.com/search/docs/crawling-indexing/robots/intro|Spécification robots.txt]]
  * [[https://llmstxt.org/|llms.txt Standard]]

---

===== Support =====

**Auteur** : Erwan Tanguy - Ticoët\\
**Site** : [[https://www.ticoet.fr/|ticoet.fr]]\\
**Wiki** : [[https://wiki.ticoet.me/doku.php?id=geo-bot-monitor|wiki.ticoet.me]]
