时间:2021-05-22
Django 中自带了 sitemap框架,用来生成 xml 文件
Sitemap(站点地图)是通知搜索引擎页面的地址,页面的重要性,帮助站点得到比较好的收录。 白话文就是:一个写了你网站的所有url的xml文件,告诉搜索引擎,请及时收录我的这些地址。
sitemap 很重要,可以用来通知搜索引擎页面的地址,页面的重要性,帮助站点得到比较好的收录。
开启sitemap功能的步骤
settings.py 文件中 django.contrib.sitemaps 和 django.contrib.sites 要在 INSTALL_APPS 中
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.sitemaps', 'django.contrib.redirects', ##### #othther apps #####)Django 1.7 及以前版本:
TEMPLATE_LOADERS 中要加入 'django.template.loaders.app_directories.Loader',像这样:
TEMPLATE_LOADERS = ( 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', )Django 1.8 及以上版本新加入了 TEMPLATES 设置,其中 APP_DIRS 要为 True,比如:
# NOTICE: code for Django 1.8, not work on Django 1.7 and belowTEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [ os.path.join(BASE_DIR,'templates').replace('\\', '/'), ], 'APP_DIRS': True, },]然后在 urls.py 中如下配置:
from django.conf.urls import urlfrom django.contrib.sitemaps import GenericSitemapfrom django.contrib.sitemaps.views import sitemap from blog.models import Entry sitemaps = { 'blog': GenericSitemap({'queryset': Entry.objects.all(), 'date_field': 'pub_date'}, priority=0.6), # 如果还要加其它的可以模仿上面的} urlpatterns = [ # some generic view using info_dict # ... # the sitemap url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),]但是这样生成的 sitemap,如果网站内容太多就很慢,很耗费资源,可以采用分页的功能:
from django.conf.urls import urlfrom django.contrib.sitemaps import GenericSitemapfrom django.contrib.sitemaps.views import sitemap from blog.models import Entry from django.contrib.sitemaps import views as sitemaps_viewsfrom django.views.decorators.cache import cache_page sitemaps = { 'blog': GenericSitemap({'queryset': Entry.objects.all(), 'date_field': 'pub_date'}, priority=0.6), # 如果还要加其它的可以模仿上面的} urlpatterns = [ url(r'^sitemap\.xml$', cache_page(86400)(sitemaps_views.index), {'sitemaps': sitemaps, 'sitemap_url_name': 'sitemaps'}), url(r'^sitemap-(?P<section>.+)\.xml$', cache_page(86400)(sitemaps_views.sitemap), {'sitemaps': sitemaps}, name='sitemaps'),]这样就可以看到类似如下的 sitemap,如果本地测试访问 http://localhost:8000/sitemap.xml
<?xml version="1.0" encoding="UTF-8"?><sitemapindex xmlns="http:///en/dev/ref/contrib/sitemaps/以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Django中自带了sitemap框架,用来生成xml文件Sitemap(站点地图)是通知搜索引擎页面的地址,页面的重要性,帮助站点得到比较好的收录。白话文就是
sitemap,又叫站点地图,我之前看过好多企业公司网站里面都没有做这个,都忽略了站点地图的作用。站点地图就相当于是一个网页目录,它可以很直观的将网站的构架和网
本文实例讲述了php生成百度sitemap站点地图类函数的方法,分享给大家供大家参考。具体实现方法如下:问题概述:公司网站是问答百科的网站、seo工程师提出需求
网站地图sitemap网站内链首先要提的那就是网站地图了,网站地图分为2种常见形式,sitemap.html和sitemap.xml格式。所有搜索引擎基本都会先
网站地图对SEO有什么效果?网站地图就是sitemap,很多SEO课程都会强调他的重要性,特别是当你更新完毕某个站点的内容后一定要检查是否生成了新的地图,如