¿Qué es y para qué utilizar un sitemap?

Por el 4 de agosto de 2008

en: Negocio

Un buen posicionamiento en buscadores es clave para el éxito de los sitios que diseñamos, esto es debido a la importancia que ha adquirido el posicionamiento web hoy en día. De este aspecto depende muchas veces el éxito o fracaso de un sitio.

Una de las herramientas de las que disponemos para llevar a cabo una mejora en el posicionamiento de nuestro sitios web son los sitemaps.

¿Que es un Sitemap?

Un Sitemap es un pequeño archivo XML o txt que subimos a nuestro sitio, en que se incluyen todas y cada una de las páginas que componen nuestro sitio.

Es la manera más sencilla que tienen los webmasters para informar a los motores de búsqueda de las páginas que están disponibles en su sitio web.

¿Para que sirve un Sitemap?

Para facilitar el trabajo a los rastreadores web que suelen encontrar páginas a partir de vínculos del sitio y a partir de otros sitios.

Consiguiendo así que aumenten las posibilidades de que los motores de búsqueda indexen el 100% de la página.

Esto es especialmente importante para páginas en las que su menús de acceso al interior de la Web, están hechos con tecnologías que no reconocen los distintos buscadores, como Java Scrip, Flash, DHTMLMenu, etc. Este tipo de menus son poco accesibles e impidiendo a menudo a las arañas adentrarse en nuestra Web y descargarse toda esa información.

¿Como hago un Sitemap?

Hay aplicaciones online que nos ayudan en la creación de nuestro Sitemap pero nos encontramos con el problema anteriormente mencionado, si en nuestro sitio web tenemos tecnologías como las anteriormente mencionadas en el menú de navegación, las herramientas online tampoco accederan al 100% del contenido de nuestro sitio.

Un buen ejemplo de aplicación web que genera Sitemap es XML-Sitemaps.

La segunda manera es integrar en nuestro sitio web un script que se encargue de la generación del Sitemap, para ello es muy importante ver la documentación del protocolo que podemos encontrar en Sitemaps.org.

Ejemplo de Sitemap que contiene una única URL

<?xml version="1.0" encoding="UTF-8"?><
urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
      <url>
      <loc>http://www.example.com/</loc>
      <lastmod>2005-01-01</lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
</url></urlset>

Si trabajaramos con un Framework de PHP (ej: CodeIgniter) seguro que buscando encontramos alguna aplicación que nos sirva para hacer rápidamente nuestro Sitemap.

Siguiendo con el ejemplo de CodeIgniter podríamos utilizar este plugin (Google_Sitemaps) que nos permite crear un Sitemap en sólo unos minutos.

Veamos un ejemplo de uso del plugin para CodeIgniter de Sitemaps:

class My_controller extends Controller
{
    function My_controller()
    {
        parent::Controller();
        $this->load->helper(array('text','url'));
        $this->load->plugin('google_sitemap'); //Load Plugin
    }

    function index()
    {
        $sitemap = new google_sitemap; //Create a new Sitemap Object
        $item = new google_sitemap_item(base_url()."MY_WEBSITE_URL",date("Y-m-d"),
		'weekly', '0.8' ); //Create a new Item
        $sitemap->add_item($item); //Append the item to the sitemap object
        $sitemap->build("./sitemap.xml"); //Build it...

         //Let's compress it to gz
        $data = implode("", file("./sitemap.xml"));
        $gzdata = gzencode($data, 9);
        $fp = fopen("./sitemap.xml.gz", "w");
        fwrite($fp, $gzdata);
        fclose($fp);

        //Let's Ping google
        $this->_pingGoogleSitemaps(base_url()."/sitemap.xml.gz");
    }

    function _pingGoogleSitemaps( $url_xml )
    {
       $status = 0;
       $google = 'www.google.com';
       if( $fp=@fsockopen($google, 80) )
       {
          $req =  'GET /webmasters/sitemaps/ping?sitemap=' .
                  urlencode( $url_xml ) . " HTTP/1.1\r\n" .
                  "Host: $google\r\n" .
                  "User-Agent: Mozilla/5.0 (compatible; " .
                  PHP_OS . ") PHP/" . PHP_VERSION . "\r\n" .
                  "Connection: Close\r\n\r\n";
          fwrite( $fp, $req );
          while( !feof($fp) )
          {
             if( @preg_match('~^HTTP/\d\.\d (\d+)~i', fgets($fp, 128), $m) )
             {
                $status = intval( $m[1] );
                break;
             }
          }
          fclose( $fp );
       }
       return( $status );
    }

}

Optimizar nuestro Sitemap

Mi recomendación es el uso de Google Webmaster dónde podréis encontrar el enlace a las Herramientas para webmasters de Google, que incluyen estadísticas y diagnóstico de problemas sobre vuestro sitio web, además de herramientas para incluir un Sitemap.

Otro punto importante es leerse el Protocolo de Sitemaps y darle el valor adecuado a cada una de nuestras URLs en cada uno de los campos que podemos definir en cada uno de los registros de nuestros Sitemaps.

Atributo Descripción

<urlset>

obligatorio

Encapsula el archivo y hace referencia al protocolo estándar actual.

<url> obligatorio

Etiqueta principal de cada entrada de URL. Las demás etiquetas son secundarias de
esa.

<loc>

obligatorio

URL de la página. Esta URL debe comenzar con el protocolo (por ej., http) y acabar
con una barra diagonal, si su servidor web así lo requiere. Este valor debe contener
menos de 2.048 caracteres.

<lastmod> opcional

Fecha de la última modificación del archivo. Esta fecha debe encontrarse en formato
Fecha y hora de W3C. Este formato
le permite omitir la parte referente a la hora, si así lo desea, y utilizar AAAA-MM-DD.

Tenga en cuenta que esta etiqueta es independiente de la cabecera “If-Modified-Since
(304)” que puede mostrar el servidor y que los motores de búsqueda pueden utilizar
la información de ambas fuentes de forma diferente.

<changefreq>

opcional

Frecuencia con la que puede cambiar esta página. Este valor proporciona información
general a los motores de búsqueda y es posible que no se corresponda exactamente
con la frecuencia de rastreo de la página. Valores aceptados:

  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never

El valor “always” (siempre) debe utilizarse para describir documentos que cambian
cada vez que se obtiene acceso a ellos. El valor “never” (nunca) debe utilizarse
para describir direcciones URL archivadas.

Tenga en cuenta que el valor de esta etiqueta se considera una sugerencia

y no una orden. A pesar de que los rastreadores de motores de búsqueda puedan tener
en cuenta esta información a la hora de tomar decisiones, pueden rastrear páginas
marcadas “hourly” (cada hora) con menor frecuencia de lo que indica la marca, así
como rastrear páginas marcadas “yearly” (cada año) con más asiduidad. Asimismo,
pueden rastrear periódicamente páginas marcadas “never” (nunca) para poder manejar
los cambios inesperados que se produzcan en ellas.

<priority>

opcional

La prioridad de esta dirección URL es relativa con respecto a las demás URL de su
sitio. Los valores válidos abarcan desde 0,0 a 1,0. Este valor no afecta a la comparación
de sus páginas con respecto a las de otros sitios; únicamente permite informar a
los motores de búsqueda de las páginas que considera más importantes para los rastreadores.

La prioridad predeterminada de una página es 0,5.

Tenga en cuenta que la prioridad que asigne a la página no suele influir en la posición
de sus URL en las páginas de resultados de los motores de búsqueda. Los motores
de búsqueda pueden utilizar esta información para elegir entre varias URL del mismo
sitio, de modo que puede emplear esta etiqueta para incrementar las probabilidades
de que sus páginas más importantes se incluyan en un índice de búsqueda.

Asimismo, tenga en cuenta que la asignación de alta prioridad a todas las URL de
su sitio probablemente no le servirá de ayuda, dado que la prioridad es relativa
y sólo se utiliza para elegir entre las distintas URL de su sitio.

1 Respuesta a ¿Qué es y para qué utilizar un sitemap?

Avatar

Los sitemaps | voragine.net

3 de octubre de 2011 a las 4:36 pm

[...] puede consultar también el protocolo para incluir un sitemap en un sitio web. En tufuncion hay un tutorial para hacer sitemaps. Contexto: Desarrollo web, buscadores, [...]

Dejar un comentario