Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django:为多语言站点生成站点地图_Django - Fatal编程技术网

django:为多语言站点生成站点地图

django:为多语言站点生成站点地图,django,Django,我创建了一个小文章网站。我正在使用translema以多种语言存储同一篇文章(它在数据库中创建选定字段的副本,以便可以对其进行翻译), 在这种情况下,如何生成网站地图 (忘了说,我正在使用localurl应用程序,所以我的URL看起来像这样http://site/en)。站点地图应用程序的工作原理是让您编写站点地图类,每个类都有一个items方法。您只需为每种语言构造一个这样的类,并确保只为每个类查询具有该特定语言的模型。本文档提供了一个入门指南。要生成每种语言的站点地图,您可以使用以下方法:

我创建了一个小文章网站。我正在使用translema以多种语言存储同一篇文章(它在数据库中创建选定字段的副本,以便可以对其进行翻译), 在这种情况下,如何生成网站地图


(忘了说,我正在使用localurl应用程序,所以我的URL看起来像这样
http://site/en
)。

站点地图应用程序的工作原理是让您编写站点地图类,每个类都有一个items方法。您只需为每种语言构造一个这样的类,并确保只为每个类查询具有该特定语言的模型。本文档提供了一个入门指南。

要生成每种语言的站点地图,您可以使用以下方法:

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

我不知道站点地图是如何工作的,但可能会生成多个站点地图。假设/sitemap-en.xml/sitemap-es.xml/sitemap-de.xml等。Solo debo agregar el i18n=True gracias。我是阿尤多·穆乔。