Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    38

    Problema paginazione sitemap.xml

    Salve ragazzi, come da titolo ho un problema a paginare la sitemap generata da uno script che ho realizzato per il mio portale. In pratica richiamando il file sitemap.php mi genera il file sitemap.xml di bel 90 MB!!! Si proprio così bel 90 MB in quanto il sito ha migliaia di pagine e quindi mi è obbligatorio creare più file xml e un indice, ma non riesco a superare questi ostacoli di programmazione. Di seguito posto il codice da me realizzato che funziona nell'estrapolare tutti i link (pagine del portale), sarebbe per me una salvezza se qualche esperto mi aiutasse nella realizzazione della paginazione dei risultati.

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

    $datamodifica date("Y-m-d");
    $priorita1categoria "1.0";
    $priorita2categoria "1.0";
    $priorita3categoria "0.5";
    $prioritaofferte "0.4";
    $prioritaannunci "1.0";
    $prioritaaltrisettori "1.0";
    $prioritastrutture "0.5";

    $fp fopen("mappa-sito.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=\"http://www.google.com/schemas/sitemap/0.84\"\r\n");
    fputs($fp"xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\r\n");
    fputs($fp"xsi:schemaLocation=\"http://www.google.com/schemas/sitemap/0.84\r\n");
    fputs($fp"http://www.google.com/schemas/sitemap/0.84/sitemap.xsd\">\r\n");

    include(
    $root.'/inc/sitemap/1categoria.php');
    include(
    $root.'/inc/sitemap/2categoria.php'); 
    include(
    $root.'/inc/sitemap/3categoria.php');
    include(
    $root.'/inc/sitemap/annunci.php');
    include(
    $root.'/inc/sitemap/offerte.php');
    include(
    $root.'/inc/sitemap/altrisettori.php');


    fputs($fp"</urlset>\r\n");

        while (!
    feof($fp)) {
            echo 
    fgets($fp1024);
        }
        

        
    fclose($fp);
    }
    ?>
    il codice richiamato ad esempio per include

    include($root.'/inc/sitemap/1categoria.php'); è:

    Codice PHP:
    <? 
    $query_vendita
    ="SELECT * FROM immobile WHERE abilitato='s' AND proposta='vendita' AND offerta_speciale='si' ORDER BY 'id' DESC";
    $result_vendita=mysql_query($query_vendita) or die ($query_vendita);
    $numero=mysql_num_rows($result_vendita);
    ?>
    <?
        
    if ($numero>0) {
            while (
    $row_vendita=mysql_fetch_array($result_vendita)) 
            {
                
                
    $query_vend3="SELECT * FROM provincia WHERE id=$row_vendita[provincia]";
                
    $result_vend3=mysql_query($query_vend3) or die ($query_vend3);
                
    $row_vend3=mysql_fetch_array($result_vend3);
                
    $provincia=$row_vend3[sigla];
                
                
    $query_vend4="SELECT * FROM comune WHERE id=$row_vendita[comune]";
                
    $result_vend4=mysql_query($query_vend4) or die ($query_vend4);
                
    $row_vend4=mysql_fetch_array($result_vend4);
                
    $comune=$row_vend4[nome_comune];
                
    $comune1=str_replace(" ""_",$comune); 
                
    $comune2=str_replace("'""_",$comune1);
                
                
    $typo1=str_replace(" ""_",$row_vendita[tipologia]); 
                
    $typo2=str_replace("'""_",$typo1);
                
    $typo3=str_replace(" ""-",$row_vendita[tipologia]); 
                
    $typo4=str_replace("'""-",$typo3); ?>

    <url>
        <loc>[url]http://www.miodominio.it/ita/a-[/url]<? echo $comune2?>-<? echo $typo2?>-in-<? echo $row_vendita[proposta]; ?>-<? echo $row_vendita[id]; ?>.html</loc>
        <lastmod><? echo $datamodifica?></lastmod>
        <priority><? echo $priorita1categoria?></priority>
    </url>

    <url>
        <loc>[url]http://www.miodominio.it/ita/[/url]<? echo $typo4?>_in_<? echo $row_vendita[proposta]; ?>-1.html</loc>
        <lastmod><? echo $datamodifica?></lastmod>
        <priority><? echo $priorita1categoria?></priority>
    </url>
    A questo punto necessito di uno script che mi generi + flie .xml che abbiano al loro interno massimo 50.000 URL e la sitemap indice.

    Come posso fare? a qualcuno sicuramente piacerà il dilemma ma io mi sto

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    38
    Aiutooooo niente ancora niente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.