X
    Categoria: Joomla

Criando um sitemap para o Joomla

 

Esse tutorial vai ensinar como montar um sitemap personalizado no joomla, podendo ser utlizado para um sitemap específico para determinados artigos e/ou categorias.

Crie um arquivo sitemap.php (fique atento a extensão .php ) copie o código abaixo:

 

<?php
header("Content-Type: application/xml; charset=UTF-8");
echo '<?xml version="1.0" encoding="UTF-8"?>'; ?> 

<urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
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">


<?php  
// Set flag that this is a parent file.
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
$path = "/var/www/public_html/";
define('JPATH_BASE', $path);
$dominio = 'http://www.dominio.com.br';
require_once JPATH_BASE . DS . 'includes' . DS . 'defines.php';
require_once JPATH_BASE . DS . 'includes' . DS . 'framework.php';
$mainframe =& JFactory::getApplication('site');

 $mainframe->initialise();

 $db = JFactory::getDBO();
$query = "SELECT id, DATE_FORMAT(modified,'%Y-%m-%d') as modified FROM `#__content` WHERE `state` = 1 order by id DESC";
$db->setQuery($query);
$artigos = $db->loadObjectList();

foreach ( $artigos as $artigo ) {
$lastmod = $artigo->modified;
if($lastmod == '0000-00-00')
{
 $lastmod = '';
}
else
$lastmod ="<lastmod>".$lastmod."</lastmod>";
$loc ="<url>
<loc>".$dominio.JRoute::_( 'index.php?view=article&id='.$artigo->id )."</loc>";
$change = "<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>";
echo $loc.$lastmod.$change;
 }

?>
</urlset>

salve seu arquivo, e publique-o na raiz do seu servidor.

para visualizar basta acessar a url: http://seudominio.com.br/sitemap.php

 

 

Juliano Rossetto: Formado em Analise e Desenvolvimento de Sistemas. Desenvolvedor dos principais CMS ( Wordpress, Joomla). Desenvolvedor de E-commerce (Opencart e WooCommerce). Analista de SEO: Otimização de sites para mecanismos de buscas. Analista de Infraestrutura voltado para servidores na nuvem: Amazon Web Services (AWS), DigitalOcean e Linode. Para dúvidas ou serviços entre em contato aqui.
Posts relacionados