Django Unterstützung Einbau-Sitemap, hier ist eine Demo:
common/sitemaps.py
from django.contrib.sitemaps import Sitemap
from django.urls import reverse_lazy
from news.models import News
class StaticViewSitemap(Sitemap):
priority = 0.5
changefreq = 'weekly'
def items(self):
return ['index', 'news_index', 'version', 'rss']
def location(self, item):
return reverse_lazy(item)
class NewsSitemap(Sitemap):
priority = 0.5
changefreq = 'weekly'
def items(self):
return News.objects.all().order_by('-id')
def location(self, item):
return reverse_lazy('news_detail', kwargs={'pk': item.id})
sitemaps = {
'static': StaticViewSitemap,
'news': NewsSitemap,
}
Ihre peoject Haupt url.py:
from django.contrib.sitemaps.views import sitemap
from common.sitemaps import sitemaps
urlpatterns = [
url(r'^$', IndexView.as_view(), name='index'),
url(r'^admin/', admin.site.urls),
url(r'^news/', include('news.urls')),
url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps}, name='sitemap')
]
doc ist here.
Ich bin mir nicht sicher, ob das helfen wird (ich habe gerade von Sitemaps erfahren ...), aber vielleicht kann es dich in die richtige Richtung bringen: Meine schnelle Suche würde bedeuten, dass 0xff eine UTF-16 BOM ist. Ich bin mir nicht ganz sicher, wie Sie Ihre Sitemap erstellt haben, aber die ersten Dinge, die ich tun würde, wäre zu versuchen, das XML mit UTF-8-Codierung und dann mit oder ohne BOM zu speichern. Ich glaube, die [sitemap.xml-Standards] (https://www.sitemaps.org/protocol.html) unterstützen nur UTF-8 (erwähnt nichts über BOM). –
Ich habe es gelöst. Das Sitemap-XML-Dokument benötigte Folgendes: – Foobar