django sitemap

django sitemap http://example.com



(1)

Lo siento por mi mal inglés pero no soy inglés!

Intento generar un sitemap.xml con mi proyecto django.

En mi proyecto no tengo modelos (mi base de datos está vacía), solo tengo una URL estática (como ''casa'' o ''Acerca de'').

Logré generar un sitemap.xml pero tengo " http://example.com " en lugar de mi nombre de dominio.

Este es mi sitemap.xml:

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc> http://example.com/accueil </loc> <lastmod> 2013-03-14 </lastmod> <changefreq> weekly </changefreq> </url> <url> <loc> http://example.com/cv </loc> <lastmod> 2013-03-14 </lastmod> <changefreq> weekly </changefreq> </url> <url> <loc> http://example.com/portfolio </loc> <lastmod> 2013-03-14 </lastmod> <changefreq> weekly </changefreq> </url> <url> <loc> http://example.com/a_propos </loc> <lastmod> 2013-03-14 </lastmod> <changefreq> weekly </changefreq> </url> </urlset>

y mis urls.py:

from django.conf.urls import patterns, include, url from django.conf import settings from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.conf.urls.static import static from sitemaps import BasicSitemap # Uncomment the next two lines to enable the admin: # from django.contrib import admin # admin.autodiscover() sitemaps= { ''pages'' : BasicSitemap([''accueil'',''cv'',''portfolio'',''apropos'']) } urlpatterns = patterns('''', # Examples: # url(r''^$'', ''portfolio.views.home'', name=''home''), # url(r''^portfolio/'', include(''portfolio.foo.urls'')), # Uncomment the admin/doc line below to enable admin documentation: # url(r''^admin/doc/'', include(''django.contrib.admindocs.urls'')), # Uncomment the next line to enable the admin: # url(r''^admin/'', include(admin.site.urls)), url(r''^'', include(''portail_portfolio.urls'')), url(r''^sitemap/.xml$'', ''django.contrib.sitemaps.views.sitemap'', {''sitemaps'': sitemaps})

)

urlpatterns += staticfiles_urlpatterns() + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Y mis sitemaps.py:

from django.contrib.sitemaps import Sitemap from django.core.urlresolvers import reverse #from portail_portfolio.models import Entry from datetime import datetime class BasicSitemap(Sitemap): def __init__(self, names): self.names = names def items(self): return self.names def changefreq(self, obj): return ''weekly'' def lastmod(self, obj): return datetime.now() def location(self,obj): return reverse(obj)

Espero que puedas entender mi inglés y espero que puedas ayudarme!

Cordialmente,

Sushi


django.contrib.sitemaps basa en django.contrib.sites .

Vaya a la sección de administración /admin/sites/site/1/ y cambie el nombre de dominio que ve allí.