Ergebnis 1 bis 5 von 5

Thema: Weitere Sitemaps dynamisch generieren?

  1. #1
    Contao-Nutzer
    Registriert seit
    11.09.2009.
    Beiträge
    55

    Standard Weitere Sitemaps dynamisch generieren?

    Hallo,

    gibt es eigentlich eine Möglichkeit weitere Sitemaps dynamisch zu generieren?
    Ich habe relativ viele Unterseiten (ca. 100.000) und würde gerne alle in die Sitemap packen. Laut Google sollten aber nicht mehr als 40.000 Links in einer Sitemap stehen, weshalb ich gerne zwei weitere Sitemap.xml Dateien mit den restlichen Links generieren lassen würde.

    Den Hook "getSearchablePages" für die Erweiterung der bestehenden Sitemap habe ich bereits gefunden. Aber wie kann ich nun eine weitere sitemap-2.xml erstellen lassen?

    Viele Grüße,
    AxlF

  2. #2
    Contao-Nutzer
    Registriert seit
    11.09.2009.
    Beiträge
    55

    Standard

    Hallo Leo,

    vielen dank für die Info.
    So hab ichs mittlerweile auch gelöst - aber jetzt habe ich das Problem dass die .xml Dateien im Stammverzeichnis jede Nacht mit dem Daily Cron Job gelöscht werden.
    Hab auch schon versucht das durch den entsprechenden Hook (removeOldFeeds) zu verhindern, jedoch klappt das nicht so richtig. Die Dateien sind jedenfalls jeden Morgen wieder verschwunden. Die Funktion gibt ein Array mit den Dateinamen (ohne Pfad) zurück und der Hook ist auch in der config.php registriert... Keine Ahnung was ich da falsch mache.

    Viele Grüße,
    AxlF

  3. #3
    Contao-Urgestein
    Registriert seit
    07.04.2010.
    Ort
    Stuttgart
    Beiträge
    2.733
    User beschenken
    Wunschliste

    Standard

    Das kannst du auch so verhindern.

    Wenn ich euch helfen konnte könnt ihr euch gerne mal
    meine Amazon Wunschliste anschauen. Dankeschön.

  4. #4
    Contao-Nutzer
    Registriert seit
    11.09.2009.
    Beiträge
    55

    Standard

    Gut zu wissen! Aber da fehlt mir die Möglichkeit das dynamisch zu machen...

    Im Moment habe ich für meine XML's ein Unterverzeichnis erstellt, indem die Dateien generiert werden. Da wird auch nichts gelöscht...
    Solange ich das mit dem Hook nicht hinbekomme, lasse ich das mal so.

    Aber danke für die Info!

  5. #5
    Contao-Nutzer
    Registriert seit
    11.09.2009.
    Beiträge
    55

    Standard

    Zitat Zitat von leo.unglaub Beitrag anzeigen
    Ohne Code zu sehen kann ich dir da auch nicht weiter helfen, aber das root verzeichnis ist sowieso ein blöder Platz für diese Dateien. Packe das am besten in deinen tl_files folder irgend wo rein wi es inhaltlich gut dazu passt. Root-Verzeichnisse sollten immer so sauber wie möglich sein.
    Hm... Da die Sitemap für Google ist und die reguläre sitemap auch dort generiert wird, dachte ich das passt...

    In der config.php
    Code:
    $GLOBALS['TL_HOOKS']['removeOldFeeds'][] = array('afSitemap', 'myRemoveOldFeeds');
    In der Klasse dann folgende Funktion:

    PHP-Code:
        public function myRemoveOldFeeds() {
            
    $this->import('Database');
            
    $strQuery "SELECT COUNT(id) AS 'count' FROM tl_hc_hotels";
            
    $objResult $this->Database->execute($strQuery);
            
    $strCount $objResult->count;

                    
    // Max url count in sitemap
            
    $strMaxUrl 45000;

                     
    // Number of site map files
            
    $strSitemaps ceil($strCount$strMaxUrl);

            
    $filename "hotel-";
            
    $i 1;

            
    $arrSitemaps = array();
            while(
    $i <= $strSitemaps) {
                        
    $arrSitemaps[] = $filename.$i.".xml";
                
    $i++;
            }

            
    $this->log('Hotel sitemaps '.implode(', '$arrSitemaps), 'afSitemaps myRemoveOldFeeds()'TL_CRON);
            return 
    $arrSitemaps;
        } 
    Im Log sehe ich auch dass die Funktion von Cronjob angesprochen wird, und das Array enthält auch die Dateinamen...

    Hast du ne Idee?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •