2016-12-22 4 views
2

Ich habe sitemap.xml mit 150k Reihen. Ich benutze Paginierung, also haben sitemap.xml?p=1, sitemap.xml?p=2 usw.Ping google über paginierte sitemap django

Wie soll ich Google über diese Seiten erzählen, mit Django?

Oder google wird sitemap.xml und alle Seiten mit param?

Vielen Dank.

+0

http://www.mugo.ca/Blog/Google-Sitemaps-for-big-sites-splitting-the-sitemap-into-multiple-files – outoftime

Antwort

1

Statt mit Abfrageparametern mit Paginierung, Django können Ihnen ein sitemap index schaffen, die nach der docs:

Sie sollten eine Indexdatei erstellen, wenn einer Ihrer Sitemaps mehr als 50.000 URLs haben. In diesem Fall paginiert Django automatisch die Sitemap, und der Index wird dies widerspiegeln.

In Ihrem URLconf Datei sollten Sie so etwas haben (aus dem docs):

urlpatterns = [ 
    url(r'^sitemap\.xml$', views.index, {'sitemaps': sitemaps}), 
    url(r'^sitemap-(?P<section>.+)\.xml$', views.sitemap, {'sitemaps': sitemaps}, 
     name='django.contrib.sitemaps.views.sitemap'), 
] 

Beachten Sie, dass section Schlüsselwort-Argument ist obligatorisch.

Da die sitemaps ist eigentlich ein Wörterbuch, das Ihre Sitemap Klassen repräsentiert (wahrscheinlich innerhalb sitemap.py definiert), Django eine Sitemap-Indexdatei erstellen (sitemap.xml), die die einzelnen Sitemap-Dateien verweisen wird (die Sitemap classes in Ihrer sitemap.py-Datei definiert) .

Check here wie eine Sitemap-Indexdatei aussieht.

Hoffe, das hilft!