Bonjour,
Bonjour, j'essaye de générer un fichier XML le sitemap pour mon site
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class SitemapController extends AbstractController
{
/**
* @Route("sitemap.xml", name="sitemap", defaults={"_format"="xml"})
* @param Request $request
* @return Response
*/
public function index(Request $request)
{
// Nous récupérons le nom d'hôte depuis l'URL
$hostname = $request->getSchemeAndHttpHost();
// On initialise un tableau pour lister les URLs
$urls = [];
// On ajoute les URLs "statiques"
$urls[] = ['loc' => $this->generateUrl('website.index')];
// Fabrication de la réponse XML
$response = new Response(
$this->renderView('sitemap/index.html.twig', [
'urls' => $urls,
'hostname' => $hostname]
)
);
// Ajout des entêtes
$response->headers->set('Content-Type', 'text/xml');
// On envoie la réponse
return $response;
}
}
Le Fichier TWIG
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
{# On boucle sur les URLs #}
{% for url in urls %}
<url>
{# On vérifie si le nom d'hôte (hostname) est présent dans l'url #}
{# Si il n'y est pas, on l'ajoute #}
<loc>
{%if url.loc|replace({hostname:''}) == url.loc%}
{{hostname}}{{url.loc}}
{%else%}
{{url.loc}}
{%endif%}
</loc>
{# Si il y a une date de modification #}
{% if url.lastmod is defined %}
<lastmod>{{url.lastmod}}</lastmod>
{% endif %}
{# Si il y a une fréquence de modification #}
{% if url.changefreq is defined %}
<changefreq>{{url.changefreq}}</changefreq>
{% endif %}
{# Si il y a une priorité #}
{% if url.priority is defined %}
<priority>{{url.priority}}</priority>
{% endif %}
{# Si il y a une image #}
{% if url.image is defined and url.image is not empty %}
<image:image>
<image:loc>{%if url.image.loc|replace({hostname:''}) == url.image.loc%}{{hostname}}{{url.image.loc}}{%else%}{{url.image.loc}}{%endif%}</image:loc>
<image:title>{{ url.image.title }}</image:title>
</image:image>
{% endif %}
</url>
{% endfor %}
</urlset>
L'affiche de mon xml quand je suis dans l'URL
This page contains the following errors:
error on line 1 at column 1: Document is empty
Below is a rendering of the page up to the first error.
J'ai cette erreur rouge sur le lien merci pour votre aide