Przewodnik

Discovery

Włączaj `robots.txt` i `sitemap.xml` tylko wtedy, gdy aplikacja naprawdę ich potrzebuje.

Włącz robots.txt i sitemap.xml

Discovery jest opcjonalne. Skonfiguruj robots.txt i sitemap.xml w app/Config/Discovery.yaml, wybierz tryb stream lub cache i ustaw jawną base URL.

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

Wpisy sitemap z tras

Dla stabilnych stron dodaj nazwane trasy do konfiguracji sitemap. Parametry podawaj jawnie, gdy trasa potrzebuje konkretnego canonical przykładu.

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

Wpisy sitemap z providerów

Jeśli wpisy sitemap powstają z danych aplikacji, dodaj implementację 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,
        );
    }
}