Files
fitme3070.pt/site/seo_files.php
T
andreandClaude Opus 5.5 8ebf20f52f feat: horário em 3 dias, horário de funcionamento compacto, textura na equipa, estrutura/SEO
- Horário de aulas: cartões mais pequenos e estreitos; a partir de 992px mostra
  o dia anterior, hoje ao centro e o seguinte (a dar a volta à semana), com as
  horas alinhadas e os dias laterais esbatidos. O JPG continua a semana toda.
- Horário de funcionamento: cartões compactos numa <dl>, ordenados por hora.
- Equipa: fundo no cinzento da parede do ginásio com juntas de blocos e grão
  muito discretos (SVG inline).
- Tira o «FitMe 3070» do header e esconde a newsletter.
- Estrutura: um <main> em todas as páginas públicas (skip link aponta-lhe),
  h2 por secção com aria-labelledby, h3 nos itens em vez de h4, sem secções
  aninhadas, alts distintos na galeria e no h1 do CrossFit.
- robots.txt e sitemap.xml gerados com o domínio da instalação; SEO_NOINDEX
  no .env tira uma cópia de staging dos motores de pesquisa.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 21:46:21 +01:00

39 lines
1.4 KiB
PHP

<?php
// robots.txt and sitemap.xml, generated so they always carry this install's
// own base URL (the site moves between domains) and honour SEO_NOINDEX.
//
// Reached via .htaccess: ^robots\.txt$ → ?f=robots, ^sitemap\.xml$ → ?f=sitemap
require_once __DIR__ . '/../config/db.php';
require_once __DIR__ . '/../config/functions.php';
$file = (string) ($_GET['f'] ?? '');
if ($file === 'robots') {
header('Content-Type: text/plain; charset=utf-8');
echo "User-agent: *\n";
if (seo_noindex()) {
echo "Disallow: /\n";
exit;
}
// Backoffice, endpoints and internals have nothing for a search engine.
foreach (['/views/', '/api/', '/shared/', '/config/', '/database/', '/includes/', '/templates/', '/cron.php'] as $p) {
echo "Disallow: {$p}\n";
}
echo "\nSitemap: " . base_url('sitemap.xml') . "\n";
exit;
}
if ($file === 'sitemap') {
if (seo_noindex()) { http_response_code(404); exit; }
header('Content-Type: application/xml; charset=utf-8');
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";
foreach (site_sitemap_urls($pdo) as $u) {
echo ' <url><loc>' . htmlspecialchars($u['loc'], ENT_XML1) . '</loc><priority>' . $u['priority'] . "</priority></url>\n";
}
echo "</urlset>\n";
exit;
}
http_response_code(404);