Guide

Discovery

Activez `robots.txt` et `sitemap.xml` uniquement lorsque l’application en a réellement besoin.

Activer robots.txt et sitemap.xml

Discovery est facultatif. Configurez robots.txt et sitemap.xml dans app/Config/Discovery.yaml, choisissez le mode stream ou cache et définissez une base URL explicite.

example.php
module: discovery
config:
  robots:
    enabled: true
    route: /robots.txt
  sitemap:
    enabled: true
    route: /sitemap.xml
    mode: stream
    routes:
      - home.index

Entrées de sitemap basées sur les routes

Pour les pages stables, ajoutez des routes nommées à la configuration du sitemap. Fournissez explicitement les paramètres lorsqu’une route nécessite un exemple canonical précis.

example.php
module: discovery
config:
  sitemap:
    routes:
      - home.index
      - name: articles.detail
        params:
          id: 123

Entrées de sitemap issues des providers

Lorsque les entrées du sitemap proviennent de données applicatives, ajoutez une implémentation de SitemapProviderInterface.

example.php
<?php

use Lemonade\Framework\Discovery\Sitemap\SitemapProviderInterface;
use Lemonade\Framework\Discovery\Sitemap\SitemapUrl;

final class ArticleSitemapProvider implements SitemapProviderInterface
{
    public function urls(): iterable
    {
        yield SitemapUrl::create(
            loc: '/articles/example',
            changefreq: 'weekly',
            priority: 0.8,
        );
    }
}