• User Attivo

    Paginazione sitemap xml

    Salve ragazzi, ho appena testato lo script realizzato per la sitemap, ho un problema in quanto sul sito che sto implementando la sitemap ha moltissimi link, lanciando la pagina php che estrapola i link da includere nella sitemap xml mi vengono fuori circa 10/15000 link, oltre ad essere troppo pesante da importare ho letto nelle line guida di google che una sitemap non puo' contenere + di 500 link. Ora mi chiedo come posso fare per paginare in modo dinamico la sitemap extralarge?
    Sicuro di una Vostra risposta auguro una buona serata.


  • ModSenior

    Ciao colvi,

    Il massimo è di 10MB o 50.000 URL.
    Quindi in il problema non si presenta...


  • User Attivo

    Scusami si è vero il massimo è di 10 mb ma la mia è di 78 mb quindi il problema c'è. ❌xAiutatemiiiiiiiiiiiii:gtsad:

    Il file che genera la sitemap è cosi:

    <?
    $root=$_SERVER['DOCUMENT_ROOT'];
    include($root."/inc/config.php");

    $datamodifica = date("Y-m-d");
    $priorita1_wr.php = "1.0";
    $priorita2_wr.php = "0.5";
    $priorita3_wr.php = "0.4";
    $priorita4_wr.php = "0.6";
    $priorita5_wr.php = "0.8";
    $priorita6_wr.php = "0.9";
    $priorita7_wr.php = "0.7";

    $fp = fopen("sitemap6.xml", "w");
    if($fp==false)
    die("unable to create file");
    else {
    fputs($fp, "<?xml version="1.0" encoding="UTF-8"?>\r\n");
    fputs($fp, "<urlset\r\n");
    fputs($fp, "xmlns="schemas/sitemap/0.84"\r\n");
    fputs($fp, "xmlns:xsi=\2001/XMLSchema-instance"\r\n");
    fputs($fp, "xsi:schemaLocation="chemas/sitemap/0.84\r\n");
    fputs($fp, ".com/schemas/sitemap/0.84/sitemap.xsd">\r\n");

    include($root.'/inc/sitemap/1_wr.php');
    include($root.'/inc/sitemap/2_wr.php');
    include($root.'/inc/sitemap/3_wr.php');
    include($root.'/inc/sitemap/4-affitto_wr.php');
    include($root.'/inc/sitemap/5_wr.php');
    include($root.'/inc/sitemap/6_wr.php');
    include($root.'/inc/sitemap/7_wr.php');
    include($root.'/inc/sitemap/8_wr.php');
    include($root.'/inc/sitemap/9_wr.php');
    include($root.'/inc/sitemap/10_wr.php');
    include($root.'/inc/sitemap/11_wr.php');
    fputs($fp, "</urlset>\r\n");

    while (!feof($fp)) {
        echo fgets($fp, 1024);
    }
    
    
    fclose($fp);
    

    }
    ?>

    Come potrei modificarlo per farlo funzionare correttamente? Intendo secondo le guide di google e cioè creare + file che non superino 10 mb l'uno.


  • ModSenior

    Ciao,

    Nei file che includi cosa c'è?


  • User Attivo

    Nei file che includo estrapola i link di ogni sezione, in pratica ogni include è una sezione.
    Appena adesso ho generato un file txt al posto di un xml ed è di 120 mb!!!
    Funziona mi estrapola tutti i link del sito ma un solo file di quelle dimenzioni google non lo prenderà mai.
    Come mi consigli di intervenire?
    Ho fatto la prova anche a generare in modo statico dei singoli file per ogni singola sezione ma la cosa non è gestibile in quanto ci sono sezioni che superano i 10 mb consentiti.
    Quindi ho pensato di creare un solo file includendo tutti i link per poi paginarli. Ma in che modo?
    Sto sbagliando?

    Grazie per la disponibilità :wink3:


  • ModSenior

    Fai 10 pagine, in ogni pagina lasci l'include di sola sezione. Avrai cosi 10 sitemap di dimensioni valide.


  • User Attivo

    Ho già fatto così solo che ci sono sezioni che hanno + di 50.000 url e pesano quindi + di 10 mb. Quindi il problema rimane.


  • User Attivo

    Nessuno ha una soluzione adeguata?
    Sto tribolando con questa maledetta sitemap extralarge ❌x


  • User Attivo

    Ragazzi riapro il post sperando di essere aiutato in quanto ad oggi ancora non sono riuscito a risolvere il problema. In due righe cercherò di spiegare qual'è il prblema.

    Il codice sopra riportato genera un solo file xml di dimenzioni paurose, ho pensato quindi di scrivere la site map su un file php con la paginazione, in ogni singola pagina creata in php con limite massimo di 30.000 url esporto in xml.
    Secondo è fattibile?
    C'è qualche script che mi permetta di paginare in xml?