关闭

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

时间: 2019-01-17阅读: 2243标签: 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.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

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

新网站怎么提升流量和权重?

任何流量网站都需要长期的SEO优化和维护,大多数网站管理员也是通过网站来获得一定的流量和转换,但是SEO的朋友们知道,获得大量流量的最好方法是获得高排名,但通常需要很长时间才能通过SEO获得一个新网站的排名

网站SEO优化专员必须具备的七种能力

大数据时代下,很多企业开始建立自己的网站,前期用户体验需要借助百度问答、贴吧这样的平台,后期的网站推广、seo优化同样需要,但是在过程中如果大量使用同一个IP重复操作,必然会受到限制。

SEO人员,如何做到脚踏实地的优化网站?

逆水行舟不进则退,这是SEO人员,经常谈论的一个话题,每天看着自己的关键词排名,大幅度的下滑,而自己却慢慢的按部就班的做着日常的SEO工作,对于SEO新人而言,很难平复这种心情

网站的权重提高_如何优化锚文本提高网站的权重?

锚文本,也称锚文本链接,就是把关键词做一个链接,指向别的网页,用来引导读者访问你网站上的其他页面。在Google看来,清晰、简洁以及与链接页面内容密切相关的锚文本可以加强两个网页间的关联性

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

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

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

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

前端需要注意的SEO优化

合理的title、description、keywords:搜索对这三项的权重逐个减小。语义化的HTML代码,符合W3C规范:语义化代码让搜索引擎容易理解网页。重要内容HTML代码放在最前。

网站流量指标的结构_uv和ip、vv、pv详解

网站流量指标的结构:PV即Page View,网站浏览量,指页面浏览的次数,用以衡量网站用户访问的网页数量。UV即独立访客数,指一天内访问某站点的人数,以cookie为依据。IP即独立IP数,指一天内使用不同IP地址的用户访问网站数量,同一IP无论访问了几个页面,独立的IP数均为1

搜索引擎收录入口_各大搜索引擎网站Url提交入口汇总

在这些搜索引擎入口进行提交就好了,在提交之前,一定确保网站是不存在问题,注意提交的时候,只要提交网站首页域名即可

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

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

点击更多...

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