Gerador de Sitemaps PHP e MySQL

  • Autor Autor Zentido
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Zentido

Zentido

Iota
Programador
Verificación en dos pasos activada
Bueno esto tool lo hize para generar muchas urls en sitemaps de una base de datos que tenia guardada, quizas les sirva para hacer sus propios sitemaps.
{Pàra usarlo require algo de conocimiento php}

Aqui va
Inserir CODE, HTML ou PHP:
<?php
/**
 * @author  Franco Salcedo
 * [MENTION=3037]Link[/MENTION]    Generador de sitemaps miltiples :)
 */

error_reporting(E_ALL);
set_time_limit(0);

    const _CONF_MYSQL_DB    = 'letras',
          _CONF_MYSQL_HOST  = 'localhost',
          _CONF_MYSQL_USER  = 'root',
          _CONF_MYSQL_PASS  = '',

          PREFIJO = 'siteamps_';

    try {
        $db = new PDO("mysql:dbname=" . _CONF_MYSQL_DB . ";host=" . _CONF_MYSQL_HOST, _CONF_MYSQL_USER, _CONF_MYSQL_PASS);
        $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }
    catch (PDOException $e) {
        echo "Error de Conexion: " . $e->getMessage();
        die;
    }

// una funcion seo que pueden utilizar.
function seeo($string, $slug = '-', $maxlength = 0){
    $seo = strtolower(trim(preg_replace('~[^0-9a-z]+~i', $slug, html_entity_decode(preg_replace('~&([a-z]{1,2})(?:acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', htmlentities($string, ENT_QUOTES, 'UTF-8')), ENT_QUOTES, 'UTF-8')), $slug));
    $seo = (!empty($maxlength)) ? substr($seo, 0, strrpos(substr($seo, 0, $maxlength), $slug)) : substr($seo, 0, 50);
    return $seo;
}

function saveFile($name, $buffer){
    // acomodar la carpeta donde se ha de generar
    $file = fopen("sitemaps/$name.xml", "w+");
    fwrite($file, $buffer);
    fclose($file);
}


// acomodar la consulta segun sus necediades
$sql = $db->prepare("select * from temas");
$sql->execute();

$actua   = 0;
$mem     = '';
$numfile = 1;

while ($p = $sql->fetchObject()) {
    if ($actua == 20000) {
        $actua = 0;
        $in    = '<?xml version="1.0" encoding="utf-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
        $fi    = '</urlset>';
        $file  =  PREFIJO . $numfile;
        saveFile($file, $in . $mem . $fi);
        $mem = '';
        $numfile++;
    }

    // En esta linea configurar como deben de ir sus urls
    $mem .= '<url><loc>[url]http://www.web.com/[/url]' . $p->soy_un_campo . '/</loc></url>';
    $actua++;
}

    echo "Se generaron $numfile Sitemaps";
?>
Espero les ayude compañeros de forobeta. 😛7:
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
muy util, gracias
 
bacana la forma como usas OOP
 
Voltar
Topo