我创建了一个小文章网站。我正在使用,translema以多种语言存储相同的文章(它在数据库中创建所选字段的副本,因此可以翻译它们), 在这种情况下如何生成站点地图?
(忘了说,我正在使用localurl应用程序,所以我的网址看起来像http://site/en
)。
答案 0 :(得分:1)
站点地图应用程序的工作原理是让您编写站点地图类,每个类都有一个项目方法。您只需要为每种语言构建一个这样的类,并确保只查询每个类具有该特定语言的模型。该文档有一个simple sitemap example,可以帮助您入门。
答案 1 :(得分:0)
要生成每种语言的站点地图,您可以使用以下内容:
from django.contrib.sitemaps import Sitemap
from pages.models import Page
class PageSitemap(Sitemap):
priority = 0.5
# this generates urls per language
i18n = True
def items(self):
pages = Page.objects.filter(
status=Page.PUBLISHED).order_by('-updated_at')
return pages
def lastmod(self, obj):
return obj.updated_at