Django Sitemap 应用实例

sitemap 主要是描述了网站的结构, 使得搜索引擎更容易的理解网站得内容。具体 sitemap 生成可以参考 sietmaps.org

Django sitemap 的建立:

    在 setting.py 的 INSTALLED_APPS 中增加 ‘django.contrib.sitemaps’在你的 TEMPLATE_LOADERS 中已经加载 ‘django.template.loaders.app_directories.Loader’确定你已经安装了 site framework
TEMPLATE_LOADERS = (    'django.template.loaders.app_directories.Loader',)INSTALLED_APPS = {    'django.contrib.sitemaps',}

为你的站点建立 sitemap。架设你的站点是一个 blog 为主的网站,那么你需要在你的 views.py 中添加如下代码:

from django.contrib.sitemaps import Sitemapfrom blog.models import Blogclass BlogSitemap(Sitemap):    changefreq = 'hourly'    priority = 0.5    def items(self):        return Blog.objects.all()    def lastmod(self, obj):        return obj.create_time    def location(self, obj):        return "/blog/%d" % obj.pk

注意:

    changefreq 和 priority 是 Sitemap 类的两个属性。 changefreq 是页面改变的频率。 priority 是优先级items() 是 sitemap 对象的列表lastmod 返回一个 Python datetime 对象location 可以制定对象的URI。默认 location() 调用 get_absolute_url()

最后在 urls.py 中加入如下代码:

sitemaps = {    'blog': BlogSitemap,}urlpatterns += (    url(r'sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps':sitempas}),)
Django Sitemap 应用实例

相关文章:

你感兴趣的文章:

标签云: