zoukankan      html  css  js  c++  java
  • fdfsdafd

    为你的站点添加一个站点地图

    Django自带一个站点地图(sitemap)框架,允许你为你的站点动态生成站点地图(sitemap)。一个站点地图(sitemap)是一个xml文件,它会告诉搜索引擎你的网站中存在的页面,它们的关联和它们更新的频率。使用站点地图(sitemap),你可以帮助网络爬虫(crawlers)来对你的网站内容进行索引和标记。

    setting.py文件做站点地图相关设置
    SITE_ID = 1
    # Application definition
    INSTALLED_APPS = (
    # ...
    'django.contrib.sites',
    'django.contrib.sitemaps',
    )
    数据表迁移

    python manage.py migrate

    在应用下新建sitemaps.py文件

    from django.contrib.sitemaps import Sitemap
    from .models import Post

    class PostSitemap(Sitemap):
       changefreq = 'weekly'
       priority = 0.9
       def items(self):
           return Post.published.all()
       def lastmod(self, obj):
           return obj.publish
    添加我们的站点地图(sitemap)URL。编辑项目中的主*urls.py文件,如下所示添加站点地图(sitemap)
    from django.conf.urls import include, url
    from django.contrib import admin
    from django.contrib.sitemaps.views import sitemap
    from blog.sitemaps import PostSitemap

    sitemaps = {
       'posts': PostSitemap,
    }

    urlpatterns = [
      ...
       url(r'^sitemap.xml$', sitemap, {'sitemaps': sitemaps},
           name='django.contrib.sitemaps.views.sitemap'),
    ]

    Django Feed 类做RSS

    应用的根目录下新建一个 feeds.py 文件以存放和 RSS 功能相关的代码.然后在feeds.py中写入如下代码:
    from django.contrib.syndication.views import Feed

    from .models import Post

    class AllPostRssFeed(Feed):
       # 显示在聚合阅读器上的标题
       title = "千峰博客"

       # 通过聚合阅读器跳转到网址的地址
       link = '/index/'

       # 显示在聚合阅读器上的描述信息
       description = "千峰博客项目演示测试"

       # 需要显示的内容条目
       def items(self):
           return Post.objects.all()

       # 聚合器中显示的内容条目的标题
       def item_title(self, item):
           return '[%s]%s' % (item.category, item.title)

       # 聚合器中显示的内容条目的描述
       def item_description(self, item):
           return item.body
    添加url

    #接下来就是指定 URL 模式,让人们访问这个 URL 后就可以看到 Feed 生成的内容。
    #通常 RSS 的 URL 配置直接写在项目的 urls.py 文件里。
    #项目的urls.py中:
    #记得在顶部引入 AllPostsRssFeed
    url(r'^all/rss/$', AllPostRssFeed(), name='rss'),
    修改模板
    #简单修改一下基模板,把 RSS 的 URL 添加到模板中,放在标签云下面:
    #【templates/base.html】
    <div class="rss">
           <a href="{% url 'rss' %}"><span class="ion-social-rss-outline"></span> RSS 订阅</a>
       </div>
    RSS测试插件

    使用360浏览器,安装一个RSS Feed Reader应用。
    订阅我们的rss地址即可:http://127.0.0.1:8000/all/rss/
  • 相关阅读:
    websocketpp相关
    大地水准面、大地基准面
    ubuntu18.04 和 qt 5.13.1 安装
    高斯——克吕格投影反算
    高斯——克吕格投影正算
    缓和曲线10麦克康奈尔
    vsCode 需安装的扩展
    显示windows电脑上已连接过的wifi密码
    linux Java项目CPU内存占用高故障排查
    tcpdump常用参数说明及常见操作
  • 原文地址:https://www.cnblogs.com/hhy-love-python/p/rwewe.html
Copyright © 2011-2022 走看看