摘要:在使用搜索的插件時,很多插件都沒有更新到,有的插件更新到了的高版本,但是不適用于的。在升級到版本的時候刪除了很多類。正確指令不是,是完畢后,數(shù)據(jù)庫生成表。我們最終使用到的表就是。有了自己的基類之后,在中配置的父類。
在使用Google搜索Django的SEO插件時,很多插件都沒有更新到Python3.x,有的插件更新到了Python的高版本,但是不適用于Django的2.x。
Django在升級到版本2.x的時候刪除了很多類。
所以,在選擇插件時,建議使用 django-snakeoil
最快捷的方法:pip install django-snakeoil
其他方法自行google,對于一個網(wǎng)站都開始設置SEO的時候,pip這個東西應該不會出現(xiàn)沒有安裝的問題了。
插件文檔鏈接:https://django-snakeoil.readthedocs.io/en/latest/
在setting.py文件中配置(注:此插件一定要放在最后)
INSTALLED_APPS = [ ...., snakeoil, ]
運行makemigrations和migrate
正常運行上述兩個命令并不會成功生成table表。正確指令:
python manage.py makemigrations seo
python manage.py migrate seo
不是snakeoil,是seo
完畢后,數(shù)據(jù)庫生成seo_seourl表。可以在django后臺,根據(jù)url配置頁面簡單title,description
頁面文件開頭,添加代碼:
{% load snakeoil %} {% get_seo_data %} <title>{{ seo.head_title }}title> <meta name="description" content="{{ seo.meta_description }}">
接下來,我們豐富此插件,添加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 }}"/>
接下來進行進一步擴展。在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, } }, }, ]
之后我們就可以在前端調(diào)用。
{% 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中的數(shù)據(jù)
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/1328.html
摘要:介紹微信風格的,與客戶端體驗一致,這個自己去微信上看吧,略。微信調(diào)試一件套,網(wǎng)頁授權(quán)模擬集成代理遠程調(diào)試。這些在微信開發(fā)者中心有介紹,略。年微信開發(fā)經(jīng)驗的人,終于又成為了零年開發(fā)經(jīng)驗的人,重新走上了踩坑之路。 showImg(https://segmentfault.com/img/bVtEd1);活動地址:http://fequan.com/2016/ 注意:英文不好,小記也帶有自己...
摘要:前言在網(wǎng)站頁面后端渲染的時代,開發(fā)者只需要按照規(guī)范制作搜索引擎友好的頁面便可以快速讓搜索引擎收錄自己網(wǎng)站的各個頁面。 前言 在網(wǎng)站頁面后端渲染的時代,開發(fā)者只需要按照規(guī)范制作搜索引擎友好的頁面便可以快速讓搜索引擎收錄自己網(wǎng)站的各個頁面。 隨著前后端技術的更新,越來越多的前端框架進入開發(fā)者們的視野,網(wǎng)站的前后分離架構(gòu)越來越得到開發(fā)者們的喜愛與認可。 后端只提供數(shù)據(jù)接口、業(yè)務邏輯與持久化服...
摘要:前言在網(wǎng)站頁面后端渲染的時代,開發(fā)者只需要按照規(guī)范制作搜索引擎友好的頁面便可以快速讓搜索引擎收錄自己網(wǎng)站的各個頁面。 前言 在網(wǎng)站頁面后端渲染的時代,開發(fā)者只需要按照規(guī)范制作搜索引擎友好的頁面便可以快速讓搜索引擎收錄自己網(wǎng)站的各個頁面。 隨著前后端技術的更新,越來越多的前端框架進入開發(fā)者們的視野,網(wǎng)站的前后分離架構(gòu)越來越得到開發(fā)者們的喜愛與認可。 后端只提供數(shù)據(jù)接口、業(yè)務邏輯與持久化服...
摘要:動態(tài)網(wǎng)站解決方案匯總先擼擼幾個概念單頁面應用,基于框架開發(fā)的項目很多都屬于單頁面應用。搜索引擎優(yōu)化,指通過對網(wǎng)站進行站內(nèi)優(yōu)化修復和站外優(yōu)化,從而提高網(wǎng)站的網(wǎng)站關鍵詞排名以及公司產(chǎn)品的曝光度。為了防止進程掛掉,可以使用來啟動,。 動態(tài)網(wǎng)站 SEO解決方案匯總 先擼擼幾個概念: SPA:單頁面應用,基于vue框架開發(fā)的項目很多都屬于單頁面應用。 SSR :server side rend...
閱讀 713·2023-04-25 19:43
閱讀 3910·2021-11-30 14:52
閱讀 3784·2021-11-30 14:52
閱讀 3852·2021-11-29 11:00
閱讀 3783·2021-11-29 11:00
閱讀 3869·2021-11-29 11:00
閱讀 3557·2021-11-29 11:00
閱讀 6105·2021-11-29 11:00