关闭

如何使用高版本Django开发网页的SEO模块

时间: 2019-01-17阅读: 2054标签: seo

在使用Google搜索Django的seo插件时,很多插件都没有更新到Python3.x,有的插件更新到了Python的高版本,但是不适用于Django的2.x。

Django在升级到版本2.x的时候删除了很多类。所以,在选择插件时,建议使用 django-snakeoil


1.安装:

最快捷的方法:pip install django-snakeoil

其他方法自行google,对于一个网站都开始设置SEO的时候,pip这个东西应该不会出现没有安装的问题了。

插件文档链接:https://django-snakeoil.readthedocs.io/en/latest/


2.配置

在setting.py文件中配置(注:此插件一定要放在最后)

INSTALLED_APPS = [
    '....',
    'snakeoil',
]

运行makemigrations和migrate

正常运行上述两个命令并不会成功生成table表。正确指令:

python manage.py makemigrations seo

python manage.py migrate seo

不是snakeoil,是seo

完毕后,数据库生成seo_seourl表。可以在django后台,根据url配置页面简单title,description


3.html

页面文件开头,添加代码

{% load snakeoil %}
{% get_seo_data %}
<title>{{ seo.head_title }}</title>
<meta name="description" content="{{ seo.meta_description }}">


4.扩展

接下来,我们丰富此插件,添加keywords。

首先,新建一个自己的model,可以继承它原有的基类:

snakeoil.models.SeoModel

也可以重写一个自己的model。简单代码如下:

class MySeo(models.Model):
   head_title = models.CharField(blank=True, max_length=80, verbose_name='head title')
   meta_description = models.TextField(blank=True, verbose_name='meta description')
   keywords = models.TextField(blank=True, verbose_name='key words')

   
   class Meta:
      abstract = True

设定abstract=True,因为此table不需要被加载。我们最终使用到的表就是seo_seourl。

有了自己的seo基类之后,在settings.py中配置seo_seourl的父类。

SNAKEOIL_MODEL = 'MyApp.models.MySeo'

重新运行makemigrations和migrate,seo_seourl会被重新生成。之后,我们在前端添加keywords的读取:

<meta name="keywords" content="{{ seo.keywords }}"/>


5.自定义Tags

接下来进行进一步扩展。在templatetags文件夹下,添加my_tags.py文件,复制snakeiol包下面的templatetags/snakeoil.py全部代码。

然后再settings.py文件中配置引用my_tags.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [...],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [...],
            'libraries': {
                'hexseo_tags': 'templatetags.hexseo_tags',
            }
        },
    },
]

之后我们就可以在前端调用。

{% load hexseo_tags %}
{% get_seo_data %}
<title>{{ seo.head_title }}</title>
<meta name="description" content="{{seo.meta_description}}"/>
<meta name="keywords" content="{{ seo.keywords }}"/>

刷新页面,查看是否成功,然后再render代码中写自己需要的逻辑代码去获取seo_seourl中的数据


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/1831

关闭

关键词的优化怎么调整才能让网站排名靠前

网站的关键词优化是一个漫长的工作,而且需要企业的人员经常分析关键词。而有的企业在短期没看到效果就不继续优化,导致网站的关键词没靠前的排名,网站的关键词是需要优化很长时间

提高页面速度的10种基础方法

自从Google改变Googlebot\\\'s的算法以高度支持快速,适合移动设备的网站以来,拥有快速网站变得越来越重要。如果这还不够好,用户通常会花更少的时间,转化率也会更低,你的网站体验越慢,用户的转化率就越低

郑州网站建设告诉你移动端网站关键词怎么优化

现在人人都要用手机,手机已经成为我们生活中不可或缺的一部分,随着互联网的发展,移动端也越来越重要了。移动端网站关键词怎么优化?用户体验优化、移动端内容优化、移动页面细节优化、移动端代码优化

网站seo分析工具_站长工具、seo综合查询推荐

这里给大家分享一些常用的网站分析工具,这些工具可以帮助我们了解网站SEO的情况。比如:检测网站死链接、HTML格式检测、蜘蛛访问、网站速度测试、网站域名IP查询、PR 友情链接检查等等

企业网站被降权的四大因素

企业网站是互联网企业的名片,它给企业带来的好处是毋庸置疑的。但是,这张名片需要仔细维护。每次涉及搜索引擎规则的调整时,许多网站也被降级。减少的具体原因是什么?

要想做好SEO优化,前端技巧不可忽略

在优化行业,有大批站长工作经验丰厚,然而在前端优化技巧方面还存在较差,从优化的层面来看,SEO思维虽说很很关键,不过没有一个精准的前端把控,网站优化方面还是存在好多的不足。

HTML网页 搜索引擎抓取的影响有哪些

如果你的网站升级改版,并且针对部分URL进行了修正,那么它可能急需搜索引擎抓取,重新对页面内容进行评估。大部分站长认为,自百度熊掌号上线以来,它解决了收录问题,实际上目标URL,只有不停的被抓取,它才可以不断的重新评估权重,从而提升排名。

网站SEO优化:写好网页标题对网站排名的重要性

与大家分享下网站SEO优化的一些技巧。谈到网站优化,首先要注意的就是网站标题的写法。每一个做SEO优化的人,都会重视网站标题和描述的优化,其中网站标题是参与关键词排名竞争的重要因素。标题一般控制在35个字左右,描述控制在80个字左右

Seo学习心得:作为前端开发需要了解的Seo优化技能

前端开发seo的学习心得,通过seo优化可以提高我们的网站搜索排名,减低运营成本的同时,增强网站的曝光率,提高网站的可信度,作为前端开发需要掌握哪些seo优化技能呢?

整理seo站长查询排名工具_前端seo知识

关键词布局:1.优先级遵循,2.网址标题上尽量以_ 这种排序方式编写 一般不超过80个字符。关于img 的alt 最好写上相关信息,关于网站链接,地址来说最好为静态地址,切成绩最好不能大于3级,层级过多可能不利爬虫了解网站层级结构

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!