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í.