1.安装

安装Sitemap APP的步骤如下:

  1. 在INSTALLED_APPS设置中添加'django.contrib.sitemaps';
  2. 确认你的TEMPLATES设置中包含DjangoTemplates后端,并将APP_DIRS选项设置为True,当然默认值就是这样,只有当你曾经修改过这些设置,才需要修改这个配置;
  3. 确认你已经安装sites framework.(在INSTALLED_APPS中添加'django.contrib.sites', 并添加设置SITE_ID=1,运行magrite)

2.例子

假设拥有一个News模型,并且您希望Sitemap包含指向所有新闻条目的链接.

# sitemaps.py
from django.contrib.sitemaps import Sitemap
from myweb.models import News
from django.urls import reverseclass NewsSitemap(Sitemap):changefreq = 'daily'    # 可选,指定每个对象的更新频率priority = 0.6          # 可选,指定每个对象的优先级,默认0.5def  items(self):       # 返回对象的列表.这些对象将被其他方法或属性调用return News.objects.all()def lastmod(self, obj): # 可选,该方法返回一个datetime,表示每个对象的最后修改时间return obj.pub_timedef location(self, obj):#可选.返回每个对象的绝对路径.如果对象有get_absolute_url()方法,可以省略locationreturn reverse('new', kwargs={'new_id': obj.id})# url.py
from django.contrib.sitemaps import sitemap    # 导入sitemap视图
from xxx.sitemaps import NewsSitemapsitemaps = {'new': NewsSitemap,
}
urlpatterns = [...url(r'^sitemap.xml$', sitemap, {'sitemap': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),
]

当客服端访问 /sitemap.xml时,这将告诉Django生成一个Sitemap.

sitemap视图需要一个额外的必需参数:{sitemaps': sitemaps}.sitemaps是一个字典,将小节的标签(例如:new或blog)映射到Sitemap类(例如:NewsSitemap).它也可以映射到Sitemap类的实例(例如: NewsSitemap(some_var)).

3.静态视图的Sitemap

通常,您希望搜索引擎抓取工具索引既不是对象详细信息页面也不是列表页的视图(例如index页面)。解决方案是在 items 中显式列出这些视图的网址名称,并在网站地图的 location 方法中调用 reverse()

from django.contrib.sitemaps import Sitemap
from django.urls import reverseclass StaticViewSitmap(Sitemap):priority = 0.7changefreq = 'daily'def items(self):return ['index']def location(self, obj):return reverse('index')

参考:The sitemap framework

django 设置媒体url_Django设置网站地图sitemap相关推荐

  1. 向百度提交网站地图Sitemap

    我知道可以通过Google 网站管理员工具向 Google 提交网站地图 Sitemap,那么我如何向百度.雅虎等其他搜索引擎提交呢?我是否需要制作一个类似 Google Sitemap 一样的 ba ...

  2. WordPress代码实现网站地图sitemap的html和xml的方法

    今天介绍的就是不使用插件完成WordPress代码实现网站地图sitemap的html和xml的方法,本站以前一直用着柳城的百度地图插件,今天心血来潮,想着还是直接代码吧,少用插件的好! 下面我就直接 ...

  3. 帝国cmssitemap.php,帝国cms网站地图sitemap免费插件,适用于帝国cms7.2和7.5版本的所有网站...

    励翔科技帝国cms二次开发中心商品介绍 帝国cms网站地图sitemap免费插件,适用于帝国cms7.2和7.5版本的所有网站 插件名称:帝国CMS-sitemap插件 插件作者:帝国CMS官方 插件 ...

  4. 网络推广策略带你了解网站地图Sitemap的作用是什么?

    在网站优化中,网络推广策略中的网站地图Sitemap的初心是为了方便用户浏览而建立的.最后不仅达到了提升用户体验的目的,还能逐渐吸引搜索引擎的注意,从此提升网站的收录率,实现一举两得的效果.那么网站地 ...

  5. 教你创建Google网站地图Sitemap.xml(转)

    http://teachmyself.blog.163.com/blog/static/18881422920119895248288/ Sitemap.xml是 google搞出来的,也就是网站地图 ...

  6. 帝国cmssitemap.php,帝国CMS网站地图sitemap的制作

    帝国CMS网站地图sitemap的制作 (2012-02-04 20:50:32) 标签: 杂谈 以前网站一直用的是在线生成工具来生成网站地图,比较方便,但是发现在线生成的无法显示出网站结构和全部的内 ...

  7. 帝国CMS网站地图sitemap的制作教程,分享2种帝国cms网站地图模板

    帝国CMS网站地图sitemap的制作教程,分享2种帝国cms网站地图模板 转载于:https://www.cnblogs.com/onlylove2015/p/5291446.html

  8. 帝国cms建立自定义页面来创建网站地图sitemap.html

    帝国cms用自定义页面来创建网站地图sitemap.html的方法.具体步骤有三步,1.创建自定义模板(网站地图模板):2.创建自定义页面(调用网站地图模板):3.刷新自定义页面(生成sitemap. ...

  9. html站点地图是什么,网站地图(sitemap)是什么意思?网站地图标签介绍

    一个城市要有地图,人们才会知道现在在哪里,还有哪边可以去.同样道理,一个网站也要有地图,搜索引擎蜘蛛才会知道有哪些网页可以去.而这个地图就叫做「网站地图」(sitemap). 网站地图是什么意思? 没 ...

最新文章

  1. 《博德之门 3》究竟有多「DnD」?
  2. ssh中c3p0连接mysql_ssh 中使用c3p0 的连接池配置 | 学步园
  3. 6-1图像分类网络模型框架解读(上)
  4. X_Forwarded_for 获得真实IP
  5. c语言大作业图书馆,大一C语言课程设计—图书馆管理系统
  6. WebService-WSDL报文解析
  7. ZED 视频 SVO 转换 其他格式
  8. CWnd与CDialog-DoModal与ShowWindow区别
  9. 计算机管理的磁盘管理简单卷,win7磁盘管理分区后无法新建简单卷怎么解决
  10. 无法打开网页但可以登录电脑微信 解决办法
  11. 怎么让win10隐藏任务栏不会在程序有消息时自动弹出
  12. SpringBoot 代码结构
  13. 方法重载例题 编写程序计算两个同类型的数之和 Java
  14. 重定向和请求转发的区别
  15. java人品计算器,‎App Store 上的“围棋死活大全”
  16. 泡妞技术帖:一物降一物 金庸爷爷教你如何谈恋爱
  17. DirectSound开发指南(1)
  18. 磁盘配额管理解决共享硬盘空间不足问题(图)
  19. 2011年国家质监局公布女生禁用以下化妆品系列,女生一定要...
  20. 视觉SLAM②--初识SLAM

热门文章

  1. bert推理速度太慢如何解决
  2. 机器学习数据不平衡不均衡处理之SMOTE算法实现
  3. pycharm波浪线检查去掉
  4. TVM darknet yolov3算子优化与量化代码的配置方法
  5. CVPR2020:训练多视图三维点云配准
  6. [JS] undefined、null、ReferenceError的区别、变量作用域问题
  7. express+ejs搭建的留言
  8. 洛谷 P1142 轰炸
  9. 2022-2028年中国消防报警行业市场前瞻与投资战略规划分析报告
  10. android地图遮罩,Android 实现遮罩