Sitemap Generator Language Table of Contents
 Japanese [日本語]  
 English [英語]  
 Korean [韓国語]  
 Simplified Chinese [简体中文]  
 Traditional Chinese [繁體中文]  
 Español [スペイン語]  
 Français [フランス語]  
 Português [ポルトガル語]  
 Arabic العربية [アラビア語]  
 Deutsch [ドイツ語]  
 Italiano [イタリア語]  
 Russian [ロシア語]  
 Turkish [トルコ語]  
 Hindi [ヒンディー語]  
 Vietnamese [ベトナム語]  
 Thai [タイ語]  
 Dutch [オランダ語]  
 Indonesian [インドネシア語]  
 Malay [マレー語]  
 Filipino [フィリピン語]  
 Swedish [スウェーデン語]  
 Norwegian [ノルウェー語]  
 Danish [デンマーク語]  
 Finnish [フィンランド語]  
 Polish [ポーランド語]  
 Czech [チェコ語]  
 Hungarian [ハンガリー語]  
 Greek [ギリシャ語]  
 Romanian [ルーマニア語]  

Programa de Generación de Mapa del Sitio XML
Generador de Mapa del Sitio XML
Copie el código y cree el programa.
Ejemplo de Mapa del Sitio XML

Introducción
Un mapa del sitio es una página o archivo que enumera la estructura y contenido de su sitio web, ayudando a los usuarios y a los motores de búsqueda a comprender la información en su sitio y facilitar la navegación.
Aunque el título de esta página es 'Programa de Generación de Mapa del Sitio XML', la página actual no funciona como una herramienta para generar mapas del sitio.
En esta página, encontrará el código para generar y recuperar un mapa del sitio en formato XML. Suba el  código a continuación   al servidor de su sitio y ejecute el programa cuando necesite un mapa del sitio XML para su sitio. Usted es libre de modificar el código. Siéntase libre de usarlo.
Descargo de responsabilidad
Dependiendo de la estructura de su sitio, existe la posibilidad de que este programa no genere un mapa del sitio de manera exitosa.
El programa asume que el sitio está creado utilizando UTF-8. Sin embargo, incluso si todo el contenido está en UTF-8, es posible que no funcione si las etiquetas HTML no coinciden con el patrón del programa.
Riesgos
Este programa está diseñado para ejecutarse en un entorno en línea. Por lo tanto, se asocian los siguientes riesgos con él.
  1. Riesgo de manipulación por parte de terceros: Terceros malintencionados pueden ejecutar el programa PHP, alterando potencialmente la raíz.
  2. Rendimiento del servidor: Con numerosos archivos/directorios, puede consumir tiempo y memoria, afectando la carga del servidor.
  3. Impacto en Googlebot: Durante la referencia de Googlebot al mapa del sitio, si el programa es rastreado mientras se está escribiendo, la información correcta puede no llegar al bot.
Medidas tomadas
Hemos tomado las siguientes medidas para reducir el riesgo:
  1. Almacenamiento de archivos generados: Para una seguridad mejorada del archivo de mapa del sitio generado, el programa sigue estos pasos:
    1. Almacenamiento temporal: Los archivos de mapa del sitio se almacenan inicialmente temporalmente en una ubicación fuera del directorio raíz, evitando la escritura directa o la manipulación por terceros malintencionados en el servidor web.
    2. Cambio de nombre de archivo: El archivo de mapa del sitio generado se cambia de nombre después del almacenamiento temporal, reduciendo el riesgo de manipulación al cambiar el nombre original del archivo.
Medidas a tomar
Para reducir su riesgo, tenga en cuenta lo siguiente:
  1. Eliminación del archivo del programa: Después de la generación del mapa del sitio, elimine rápidamente el archivo del programa cargado del servidor.
  2. Ejecución en un entorno seguro: Tenga cuidado al colocar archivos en servidores remotos y considere ejecutarlos localmente si siente que están en riesgo.
  3. Monitoreo de carga: Si aumenta la carga del servidor, cese el uso inmediatamente para evitar problemas de rendimiento.
  4. Medidas para Googlebot: Después de generar el mapa del sitio, verifique el éxito del rastreo en Google Search Console. Considere iniciar manualmente el rastreo si es necesario.
  • A menos que disponga de un complemento de generación de mapas del sitio similar a WordPress, deberá generar su propio mapa del sitio. En ese caso, le recomendamos utilizar el código que se presenta a continuación.
  • Puede encontrar información detallada sobre la estructura y necesidad del mapa del sitio en muchos sitios web, por lo que se omite aquí, proporcionando solo el código PHP.
  • Cada elemento en el código tiene comentarios; elija el método que se adapte a sus preferencias.
  • El archivo XML generado (.xml) se ve como el siguiente, proporcionando un ejemplo con los elementos mínimos requeridos para el registro en Google. Además, puede recuperar "Título de la Página", "Frecuencia de Cambio" y "Prioridad".
    Ejemplo de Mapa del Sitio XML
    ・La fecha de última modificación (<lastmod>) se obtiene en Tiempo Universal Coordinado (UTC).
    ・Por ejemplo, la hora de Japón agrega 9 horas a la hora mostrada.
  • Pasos de Instalación:
    1. Prepare un directorio con un nombre como "sitemap."
    2. Copie el código a continuación   y péguelo en su editor de páginas web.
    3. Siga los comentarios en el código para reemplazar cada elemento con contenido que se adapte a sus condiciones.
    4. Nombre el archivo, por ejemplo, 'sitemapgenerator.php', y guarde la página editada con la extensión '.php', no '.html.'
    5. Súbalo a su servidor web. Si puede acceder a la página y ver una pantalla similar a la siguiente, la generación fue exitosa.
      * Probado en un entorno de desarrollo con aproximadamente 20,000 páginas, el tamaño del archivo es de aproximadamente 6MB (seleccionando todos los elementos disponibles en la configuración), y tomó aproximadamente 3 segundos.
      Ejemplo exitoso de tipo que incluye sección MTML
      【Tipo que incluye sección MTML】
      Ejemplo exitoso de tipo solo con sección PHP
      【Tipo solo con sección PHP】
    6. Abra el "archivo XML" guardado en su navegador para verificarlo, o descargue el archivo ".xml" guardado para verificarlo, y si se genera correctamente, regístrelo enGoogle Search Console  Bing Webmaster Tools  , etc.
      * Si el tamaño del archivo es grande, es posible que no pueda abrirlo en un navegador. Descargue el archivo ".xml" desde el servidor web para confirmación.
      * Dependiendo del navegador, es posible que no se muestre correctamente al abrirlo.
      * Si lo abre en un navegador, la "Declaración XML" en la primera línea puede que no aparezca.
    7. Si lo está utilizando por primera vez, asegúrese de una generación adecuada y verifique los elementos innecesarios.
    8. Si encuentra un "Error de codificación" al acceder a la página, podría ser causado por caracteres específicos.
      Ejemplo de Error de Codificación
      Por ejemplo, caracteres como [&] deberían reescribirse como códigos de escape, como se muestra en la tabla a continuación.
      * Los códigos de escape se pueden copiar haciendo clic.
    9. Carácter  Código de Escape 
      Ampersand
      &➡️
      &amp;
      Single Quote
      ➡️
      &apos;
      Double Quote
      ➡️
      &quot;
      Greater Than
      >➡️
      &gt;
      Less Than
      <➡️
      &lt;
      Causas Comunes de "Error de Codificación":  
      Un "Error de Codificación" es un mensaje de error que ocurre cuando un archivo XML no está codificado correctamente con una codificación de caracteres específica. Se pueden considerar los siguientes problemas:
      1. Se encuentran caracteres no válidos
        [Causa] XML exige que ciertos caracteres ([&][']["][>][<], etc.) se escapen. Ocurre un error si estos caracteres no se escapan correctamente.
        [Solución] Escapar los caracteres no válidos o asegurarse de que estén escapados correctamente.
      2. No se especifica la codificación correcta
        [Causa] ISi la declaración del archivo XML al principio, como <?xml version="1.0"?>, está presente y el atributo de codificación no está especificado correctamente después, ocurre un error.
        [Solución] Especificar la codificación correcta, por ejemplo, <?xml version="1.0" encoding="UTF-8"?>.
      3. La sección de declaración es incorrecta
        [Causa] Ocurre un error si la sección de declaración es incorrecta o si hay un error entre "<?xml" y "?>".
        [Solución] Corregir la sección de declaración.
      4. La codificación del archivo no coincide con la declaración
        [Causa] Ocurre un error si la codificación real del archivo no coincide con la codificación especificada en la declaración XML.
        [Solución] Ajustar la codificación del archivo para que coincida con la declaración.
      5. El archivo está dañado
        [Causa] Ocurren errores si el archivo no se guarda correctamente o está dañado.
        [Solución] Volver a guardar el archivo y asegurarse de que se pueda cargar correctamente.
    10. Cuando verificamos esto en un entorno de prueba y no se especificaron exclusiones, se encontró un directorio como "sys", que no se utiliza como directorio de páginas web en este sitio, en el archivo XML. Si se confirma, especifique el nombre del directorio en el ítem 'Excluir directorios', por ejemplo, "$excludeDirectories = ['sys']".
      Alternativamente, intente especificar algo como "$excludeMetaTags = ['NOINDEX']" en la sección "Excluir Metaetiquetas". El código PHP a continuación utiliza "NOINDEX" como configuración predeterminada.
* La "font-family" en el programa debe ajustarse para coincidir con su propio sitio si es necesario.
《 Generación de código PHP para el mapa del sitio XML 》
 Descargar archivo ZIP solo con parte PHP   
Puedes ejecutar el programa incluso con solo la sección PHP.
Guarda el archivo con la extensión ".php".

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Programa PHP para Generar Mapa del Sitio XML</title>
<meta name="robots" content="NOINDEX,NOFOLLOW">
<!-- Cargar Fuentes de Iconos Gratuitas - Puede eliminarse si no se utiliza -->
<link href="https://use.fontawesome.com/releases/v6.2.0/css/all.css" rel="stylesheet">
</head>
<body>
<h2>&nbsp;&nbsp;<i class="fa-regular fa-pen-to-square fa-2x" style="color: crimson"></i>&nbsp;Creación de Mapa del Sitio XML</h2>
<hr>
<div style="margin:15px 5px 10px 20px;padding: 0 15px 0 0; font-size: 14px;background-color: lavenderblush; border: gray 1px solid; border-radius: 4px;">
<div style="margin:15px 0 0 20px">
    <form method="post">
        <input type="submit" name="downloadLocal" value="Descargar archivo XML localmente" style="background-color: white;border-radius: 5px;cursor: pointer;">
    </form>
</div>
<ul>
<li>El archivo XML descargado desde aquí contiene parte de la porción HTML de la página.</li>
<li>Si necesita un archivo XML puro, descárguelo desde un servidor remoto. O elimine la porción HTML del archivo descargado. Los archivos XML van desde "&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;" hasta "&lt;/urlset&gt;".</li>
</ul>
</div>
<hr>
<?php
//************************************************
// Programa PHP para Generar Mapa del Sitio XML
// Programa proporcionado por: Libro Útil de Conocimientos de Todos
//        Minna no Chishiki Chotto Benricho
//        みんなの知識 ちょっと便利帳
// https://www.benricho.org/Tips/sitemapgenerator/
// Lanzado: 3 de enero de 2024
//************************************************

// Directorio raíz del servidor web. Se recupera automáticamente.
$sitemapDirectory = $_SERVER['DOCUMENT_ROOT'];

// Nombre del archivo .xml (nombre de archivo final)
// El nombre del archivo .xml se puede cambiar. Sin embargo, muchos motores de búsqueda utilizan "sitemap.xml" como convención estándar, por lo que se recomienda usar "sitemap.xml".
$finalSitemapFilename = 'sitemap.xml';

// Directorio para guardar el archivo del mapa del sitio (directorio final - raíz)
$finalSitemapPath = $sitemapDirectory . '/' . $finalSitemapFilename;

// Directorio para generar el mapa del sitio
$rootDirectory = $_SERVER['DOCUMENT_ROOT'];

// Nombre del archivo .xml (nombre de archivo temporal)
$tempSitemapFilename = 'temporarysitemap.xml';

// Directorio para guardar el archivo del mapa del sitio (directorio temporal)
$tempSitemapPath = $sitemapDirectory . '/' . $tempSitemapFilename;

// Crear un directorio temporal si no existe
$tempDirectory = dirname($tempSitemapPath);
if (!file_exists($tempDirectory)) {
    mkdir($tempDirectory, 0777, true);
}

// Eliminar el antiguo mapa del sitio y renombrar al nuevo mapa del sitio (usando comando de shell)
$oldSitemapFilename = 'old-' . $finalSitemapFilename;
$oldSitemapPath = $sitemapDirectory . '/' . $oldSitemapFilename;

// Eliminar el antiguo mapa del sitio si existe
if (file_exists($oldSitemapPath)) {
    unlink($oldSitemapPath);
}

// Renombrar al nuevo mapa del sitio
if (file_exists($tempSitemapPath)) {
    rename($tempSitemapPath, $oldSitemapPath);
}

// Comprobar si se hizo clic en el botón de descarga local
if (isset($_POST['downloadLocal'])) {
    // Copiar el mapa del sitio al directorio temporal
    copy($finalSitemapPath, $tempSitemapPath);

    // Establecer encabezados para la descarga
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . $finalSitemapFilename . '"');
    header('Content-Length: ' . filesize($tempSitemapPath));

    // Mostrar el archivo
    readfile($tempSitemapPath);

    // Después de la descarga, eliminar el mapa del sitio guardado en el directorio temporal
    unlink($tempSitemapPath);
    exit;
}

///// Configuraciones de Exclusión /////
// Directorios a excluir. Especificar solo los nombres de directorio. ['dir-1', 'dir2'] etc.
// Establecer un array vacío si no es necesario. $excludeDirectories = [];
$excludeDirectories = [];

// Archivos a excluir. Especificar solo los nombres de archivo. ['aaa.html', 'bbb.php'] etc.
// Establecer un array vacío si no es necesario. $excludeDirectories = [];
$excludeFiles = [];

// Directorios/Archivos a excluir ['dir-1/dir1/file1.html', 'dir2/file2.php'] etc.
// Las rutas excluidas no deben incluir una barra inclinada "/" al principio.
// Establecer un array vacío si no es necesario. $excludeDirectories = [];
$excludePaths = [];

// Etiquetas meta que contienen ['NOINDEX', 'NOFOLLOW', 'REFRESH'], etc. para excluir
// Establecer un array vacío si no es necesario. $excludeDirectories = [];
// Se recomienda especificar ['NOINDEX']
$excludeMetaTags = ['NOINDEX'];

///// Condiciones de Generación del Mapa del Sitio /////
// Obtener el título de la página (1: Sí, 2: No)
// * No recomendado por Google Search Console
// * Si se registra en Google Search Console, establecer en "2: No"
// * Si se establece en "1: Obtener", Google Search Console puede mostrar una alerta que dice: "Las etiquetas de título no son reconocidas. Por favor, haga correcciones".
$getTitle = 2;
// Cadenas a eliminar del título de la página
// * Puede eliminar cadenas especificadas del título. ['of', 'is'] etc.
// Establecer un array vacío si no es necesario. $excludeDirectories = [];
$removeTitleStrings = [];

// Obtener la última fecha de modificación del archivo (1: Sí, 2: No)
// * Recomendado por Google Search Console
$getLastMod = 1;

// Frecuencia de actualización de la página
// * Ignorado por Google. Se recomienda no agregar valores.
// Usar frecuencia de actualización de la página (1: Sí, 2: No)
$useChangeFreq = 2;
// Seleccionar elementos para la frecuencia de actualización cuando se elige "1"
// ['always', 'hourly', 'daily', 'weekly', 'monthly', 'yearly', 'never']
// Elegir valores que se apliquen a la frecuencia de actualización de su sitio
$changefreqValues = ['elemento adecuado para su sitio'];

// Prioridad de la página
// * Ignorado por Google. Se recomienda no agregar valores.
// Obtener prioridad (1: Sí, 2: No)
$getPriority = 2;

// Mensaje de generación del mapa del sitio
$successMessage = "<p>・ El archivo XML del Mapa del Sitio ha sido generado.</p><p>・ Se ha guardado en la raíz del servidor remoto como '{$finalSitemapFilename}'.<br>・ Por razones de seguridad, por favor elimine el archivo del programa del servidor remoto.</p><p>・ <a href='/{$finalSitemapFilename}' target='_blank'>Abrir el 'archivo XML' en el navegador [nueva pestaña].</a></p>";

// Encabezado XML del mapa del sitio (para el archivo final del mapa del sitio)
$xmlFinal = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
XML;

// Procesar archivos de forma recursiva dentro del directorio (para el archivo final del mapa del sitio)
function generateSitemap($directory, $excludeDirs, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, &$xmlFinal) {
    $dir = new DirectoryIterator($directory);
    foreach ($dir as $fileInfo) {
        if ($fileInfo->isDot()) continue;

        $filename = $fileInfo->getFilename();
        $filepath = $fileInfo->getPathname();
        $fileExtension = pathinfo($filename, PATHINFO_EXTENSION);

        // Comprobar si es un directorio/archivo excluido
        $excludePath = str_replace($_SERVER['DOCUMENT_ROOT'], '', $filepath);
        if (in_array(ltrim($excludePath, '/'), $excludePaths)) {
            continue;
        }
        if ($fileInfo->isDir()) {
            if (in_array($filename, $excludeDirs)) {
                continue;
            } else {
                generateSitemap($filepath, $excludeDirs, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, $xmlFinal);
            }
        } else {
            if (in_array($filename, $excludeFiles) || in_array($filename, $excludeDirs)) {
                continue;
            }

            if (in_array($fileExtension, ['html', 'php'])) {
                processFile($filepath, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $xmlFinal);
            }
        }
    }
}

// Procesar el archivo (para el archivo final
function processFile($filepath, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, &$xmlFinal) {
    $content = file_get_contents($filepath);
    if (shouldExcludeContent($content, $excludeMetaTags)) {
        return;
    }

    $url = getRelativeUrl($filepath);
    // Establecer la última fecha de modificación en formato UTC (Tiempo Universal Coordinado) (indicado por "+00:00")
    $lastMod = ($getLastMod == 1) ? getLastModifiedDateUTC($filepath) : '';

    $xmlFinal .= "\n <url>";
    $xmlFinal .= "\n <loc>{$url}</loc>";

    if ($getTitle == 1) {
        $title = getTitleFromContent($content);
        if (!empty($title)) {
            $title = str_replace($removeTitleStrings, '', $title);
            $xmlFinal .= "\n <title>{$title}</title>";
        }
    }

    // Mostrar la última fecha de modificación
    if (!empty($lastMod)) {
        $xmlFinal .= "\n <lastmod>{$lastMod}</lastmod>";
    }

    // Mostrar changefreq
    if ($useChangeFreq == 1) {
        $changefreq = $changefreqValues[array_rand($changefreqValues)];
        $xmlFinal .= "\n <changefreq>{$changefreq}</changefreq>";
    }

    // Mostrar prioridad
    if ($getPriority == 1) {
        $priority = getPriorityFromDepth($filepath);
        $xmlFinal .= "\n <priority>{$priority}</priority>";
    }

    $xmlFinal .= "\n </url>";
}

// Calcular la prioridad basada en la profundidad (para el archivo final del mapa del sitio)
function getPriorityFromDepth($filepath) {
    $depth = substr_count($filepath, DIRECTORY_SEPARATOR);
    return 1 - ($depth * 0.1);
}

// Comprobar si se deben excluir las etiquetas meta (para el archivo final del mapa del sitio)
function shouldExcludeContent($content, $excludeMetaTags) {
    foreach ($excludeMetaTags as $tag) {
        if (stripos($content, '<meta name="robots" content="' . $tag) !== false) {
            return true;
        }
    }

    return false;
}

///// Obtener la última fecha de modificación del archivo - Se recomienda utilizar UTC (Tiempo Universal Coordinado) en el elemento XML del mapa del sitio
// Establecer la última fecha de modificación en formato UTC (indicado por "+00:00")
function getLastModifiedDateUTC($filepath) {
    $lastModTimestamp = filemtime($filepath);
    $lastModDateTime = new DateTimeImmutable('@' . $lastModTimestamp);
    return $lastModDateTime->format('c');
}

// Obtener el título del archivo HTML (para el archivo final)
function getTitleFromContent($content) {
    $dom = new DOMDocument;
    libxml_use_internal_errors(true); // Suprimir errores durante el análisis HTML
    $dom->loadHTML($content);

    $titleElements = $dom->getElementsByTagName('title');
    if ($titleElements->length > 0) {
        $title = $titleElements->item(0)->textContent;
        return $title;
    }

    return '';
}

// Obtener la URL relativa del archivo (para el archivo final)
function getRelativeUrl($filepath) {
    $relativeUrl = str_replace($_SERVER['DOCUMENT_ROOT'], '', $filepath);
    return $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['SERVER_NAME'] . str_replace('\\', '/', $relativeUrl);
}

// Iniciar la generación del mapa del sitio (para el archivo final)
generateSitemap($rootDirectory, $excludeDirectories, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, $xmlFinal);

// Pie de página del mapa del sitio (para el archivo final)
$xmlFinal .= "\n</urlset>";

// Guardar el mapa del sitio en un archivo (para el archivo final)
file_put_contents($finalSitemapPath, $xmlFinal);

// Mostrar mensaje de éxito (indicando que se ha generado y guardado el archivo final del mapa del sitio)
echo $successMessage;
?>
<hr>
<p style="margin-top: 20px">
<!-- Establecer el nombre de archivo de este programa PHP en la etiqueta <a>. La extensión es ".php" -->
<a href="Nombre del archivo de este programa.php" style="margin-left: 20px;text-decoration: none;"><i class="fa-solid fa-check" style="color: #005eff;"></i> Regenerar "Archivo XML"&nbsp;&nbsp;<i class="fa-solid fa-rotate fa-spin fa-2x" style="color:crimson"></i>&nbsp;&nbsp;&nbsp;[Recargar página]</a>
</p>
<p>
<!-- Abrir el "Archivo XML" generado en un navegador -->
<a href='<?php echo '/' . $finalSitemapFilename; ?>' target='_blank' style='margin-left: 20px;text-decoration: none;'><i class="fa-solid fa-check" style="color: #005eff;"></i> Abrir "Archivo XML" en el navegador&nbsp;&nbsp;<i class="fa-solid fa-chalkboard-user fa-beat-fade fa-2x" style="color:green"></i>&nbsp;&nbsp;&nbsp;[Pestaña separada]</a>
<div style="margin-left: 30px;font-size: 12px;color: gray">* Si el tamaño del archivo es grande, es posible que no pueda abrirlo en su navegador. Si no puede abrirlo en su navegador, descargue el archivo ".xml" desde el servidor web y verifíquelo.</div>
</p>
<hr>
<!-- Confirmar la adición/actualización del mapa del sitio de "Google" -->
<p>
<!-- <a>Establecer su propia URL en la etiqueta -->
<a href="https://search.google.com/search-console/sitemaps?resource_id=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;"> <i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Google</strong>] Confirmar adición/actualización del mapa del sitio&nbsp;&nbsp;<i class="fa-solid fa-arrow-up-from-bracket fa-bounce fa-2x" style="color: #db0016;"></i></a>
</p>
<!-- [Consola de búsqueda de Google] -->
<p>
<!-- <a>Establecer la URL de la página "Sitemap" de Google Search Console que ha registrado en la etiqueta. -->
<a href="https://search.google.com/search-console?resource_id=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;"><i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Consola de Búsqueda de Google</strong>]&nbsp;&nbsp;&nbsp;<i class="fa-solid fa-up-right-from-square fa-beat fa-2x" style="color: blue"></i></a>
<div style="font-size: 13px; margin: 0 40px">* Se asume que ya se ha registrado en "Google Search Console".</div>
</p>
<hr>
<!-- Confirmar adición/actualización del mapa del sitio de "Bing" -->
<p>
<!-- Establecer la URL de la página "Herramientas para webmasters de Bing" que ha registrado y el nombre del archivo XML que ha configurado en la etiqueta <a>. El nombre del archivo debe coincidir con el nombre del archivo configurado en "$sitemapFilename". -->
<a href="https://www.bing.com/webmasters/sitemaps?siteUrl=your own URL/&sitemap=your own URL/sitemap.xml" target="_blank" style="margin-left: 20px;text-decoration: none;"> <i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Bing</strong>] Confirmar adición/actualización del mapa del sitio&nbsp;&nbsp;<i class="fa-solid fa-arrow-up-from-bracket fa-bounce fa-2x" style="color: #db0016;"></i></a>
</p>
<!-- [Herramientas para webmasters de Bing] -->
<p>
<!-- Establecer la URL de la página "Herramientas para webmasters de Bing" que ha registrado en la etiqueta <a>. -->
<a href="https://www.bing.com/webmasters/home?siteUrl=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;">
<i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Herramientas para webmasters de Bing</strong>]&nbsp;&nbsp;&nbsp;<i class="fa-solid fa-up-right-from-square fa-beat fa-2x" style="color: blue"></i></a>
<div style="font-size: 13px; margin: 0 40px">* Se asume que se ha registrado en "Herramientas para webmasters de Bing" o ha completado la colaboración con "Consola de Búsqueda de Google".</div>
</p>
<hr>
<!-- Muestra el nombre del sitio, etc. Si no es necesario mostrarlo, por favor, elimínelo. -->
<h3 align="center"><i class="fa-solid fa-house" style="color: crimson"></i>&nbsp;Nombre de tu sitio, etc.&nbsp;<i class="fa-solid fa-house" style="color: crimson"></i></h3>
<!-- Puede eliminarlo. -->
<h4 align="center"><a href="https://www.benricho.org/" target="_blank" style="text-decoration: none;"><i class="fa-solid fa-house" style="color: blue"></i>&nbsp;みんなの知識 ちょっと便利帳&nbsp;<i class="fa-solid fa-house" style="color: blue"></i></h4>
</body>
</html>
Guarda el archivo con la extensión ".php"..
 Descargar archivo ZIP solo con parte PHP   
Puedes ejecutar el programa incluso con solo la sección PHP.
Esto concluye nuestra introducción al código PHP del generador de mapas del sitio XML.
Al utilizar este código, puede lograr un rastreo e indexación efectivos por parte de los motores de búsqueda, asegurando el funcionamiento sin problemas del sitio.
Aunque existen programas de pago con funciones avanzadas como actualizaciones automáticas, aquí nos centramos en proporcionar funcionalidades esenciales.
Puede haber errores en la redacción ya que es una traducción de la versión japonesa. Nos disculpamos por las molestias, pero si hay un error en la redacción en el código, corríjalo o ajústelo usted mismo.
Se agradece su retroalimentación sobre el uso de este código. Tenga en cuenta que no puedo responder preguntas.

おすすめサイト・関連サイト…

Last updated : 2024/06/29