codeigniter frameworks sitemap

Generación de sitemap con Codeigniter



frameworks (4)

Necesito generar un mapa del sitio en una aplicación Codeigniter . Encontré algunas bibliotecas pero todas están desactualizadas y tienen errores.

¿Realmente necesito una biblioteca separada para esto?

Quiero saber la mejor manera de generar el mapa del sitio en Codeigniter .


Debe establecer el encabezado:

<?php header(''Content-type: text/xml''); ?> <?= ''<?xml version="1.0" encoding="UTF-8" ?>'' ?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc><?= base_url();?></loc> <priority>1.0</priority> </url> <!-- My code is looking quite different, but the principle is similar --> <?php foreach($data as $url) { ?> <url> <loc><?= base_url().$url ?></loc> <priority>0.5</priority> </url> <?php } ?> </urlset>


He escrito un modelo de CodeIgniter que te permitió llamar a funciones desde un controlador de sitemap y escupir el XML cuando hayas terminado de alimentar el sitemap.

Siéntase libre de echar un vistazo y reutilizar el modelo CodeIgniter:

https://github.com/alphabase/CodeIgniter-Sitemap-Generator


Puedes usar mi código:

controladores / seo.php

Class Seo extends CI_Controller { function sitemap() { $data = "";//select urls from DB to Array header("Content-Type: text/xml;charset=iso-8859-1"); $this->load->view("sitemap",$data); } }

vistas / sitemap.php

<?= ''<?xml version="1.0" encoding="UTF-8" ?>'' ?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc><?= base_url();?></loc> <priority>1.0</priority> </url> <!-- My code is looking quite different, but the principle is similar --> <?php foreach($data as $url) { ?> <url> <loc><?= base_url().$url ?></loc> <priority>0.5</priority> </url> <?php } ?> </urlset>

agregar linea a config / route.php

$route[''seo/sitemap/.xml''] = "seo/sitemap";

Lo siento si hay algunos errores en el código, lo hice especialmente para ti. Si hay errores, puede corregirlos fácilmente entendiendo el principio.


Se recomienda encarecidamente agregar el enlace del mapa del sitio al archivo robots.txt así:

Sitemap: http://www.yoursite.com/seo/sitemap