用Django + wordpress快速搭建一个自己喜欢的个人站点

本渣渣不专注技术,只专注使用技术,不是一个资深的coder,是一个不折不扣的copier

一、自述

本渣渣不专注技术,只专注使用技术,不是一个资深的coder,是一个不折不扣的copier

自学 Python,始于 Django 框架,Scrapy 框架,elasticsearch搜索引擎,最初的目的是毕业设计需求,毕设项目是做一个类似百度的搜索引擎后被导师pass掉,后又跟着 bobby 老师的 Python升级3.6 强力Django+杀手级Xadmin打造在线教育平台教程做了一个网站,需要视频教程的私聊。从2018年二月份毕设课题确定,是我学习Python的开始,到2018年5月份毕设完成,并不是我学习Python的结束。目前仍然从事Python开发工作。是时候通过一个项目来记录一下自己的学习成果了。既然学习了django web框架,那很自然的就是想到要搭建一个网站了,最常见的个人网站自然就是个人博客。

跟着 bobby老师课程做的毕设:Python升级3.6 强力Django+杀手级Xadmin打造在线教育平台

二、为什么要搭建个人站点

为什么我想搭建一个属于自己的个人站点推荐阅读:生活笔录 | 码农的危机感

网上有现成的博客框架,比如 Hexo、Wordpress,直接按照他们的文档安装显然达不到 Django 练习的目的,也起不到彰显逼格的效果。开始没有什么头绪,因为搭建一个网站对于我而言,难点应该是前端:JS、Jquery、CSS、HTML、AJAX,头疼的应该是CSS。后来在学习Python爬虫时,经常逛崔庆才个人站点。看着崔大的博客整的还挺炫酷,激发了我当初想建一个个人站点的激情,开始也想像崔大那样用 Wordpress搭建,但是这样局限性太大,如果我需要改动一些页面适应我自己的需求,这需要懂 PHP,不懂没办法给它动刀,不符合我放荡不羁的性格,就是想有一个自己可以随意摆弄的个人站点。

三、思考

需求:有一个可以自己随意摆弄的站点,

现有技术:Django后端开发

局限:前端——Jquery、CSS、HTML、AJAX,一直认为前端是苦力干的活,不想深入学习

怎么办?

方案一:

使用: Bootstrap自己设计页面,但是问题是这样设计出的页面,是不需要写CSS了,不过怎么才能有崔大博客的炫酷特效呢?这可能需要大量的 JQuery,难道要自己去写,那不可能吧!不现实,放弃

方案二:

请搞前端的同事给写一个,这个涉及——人情、时间、沟通,也太费劲,放弃

方案三:

此时对 Wordpress做了一下简单背调,发现 Wordpress 竟然是一个那么庞大的社区。

WordPress 是使用 PHP 语言开发的博客平台,而且还有大量的页面主题,

那么后台和主题应该相对独立,主题应该全部使用 JQuery + H5 + CSS开发,PHP只负责渲染数据,后来简单研究了一个 Wordpress 框架发现还真是这样

那么我就在想这个它用PHP做而且扩展性这么强为什么不能用 Dajngo 来开发后台呢?

Django 有这么强大的 Templates 模板功能,模板语法就很像 PHP 一样在 HTML 页面写代码

就这样我的灵感来了,毅然决定使用 Django 来开发后台,把崔大的站点主题copy下来。

对于后端开发人员来说,扒取一个全栈前端源码应该是一个必备技能

四、目标

思考:

既然要做这件事,就不能我一个人独享,应该有很多想拥有自己站点的小伙伴,都被前端知识劝退了

目标:

1、深入的学习 Django 知识
2、研究出一个 Django 和前端轻松对接的方法
3、制作一套教程
4、学习SEO知识

总结:

制作、后期维护应该都会耗费很多时间,那么不能只输出不考虑回报,如果没有回报,这个教程可能无法持续升级
所以要学习一些SEO知识

五、制作

作为一个资深的 Copier,后台应该不会选择一行行的码出来,造轮子是 Coder 的事。

然后就找到了一个写的很不错的个人站源码 TendCode、结合崔庆才个人博客前端源码,齐活

这里学到的不应该是只是仿制崔大个人站点,我是比较喜欢崔大首页的设计所以选择崔大的。

如果在别处看到自己喜欢的 Wordpress 主题,都是可以用的,因为原理都一样

搭建完成的个人站点:静觅 | StormSha的个人博客

前端源码托管在GitHub:HTML

项目的完整代码托管Github:Github

教程目录

Django个人博客开发 | 前言

Django个人博客开发一 | 抓取网站源码

Django个人博客开发二 | 配置开发环境

Django个人博客开发三 | 创建虚拟环境

Django个人博客开发四 | 创建博客项目

Django个人博客开发五 | 创建第一个APP

Django个人博客开发六 | 数据库结构设计

Django个人博客开发七 | 通过admin管理后台

Django个人博客开发八 | 博客首页开发一

Django个人博客开发九 | 整理项目结构

Django个人博客开发十 | 博客首页开发二

Django个人博客开发十一 | 博客首页开发三

Django个人博客开发十二 | 博客详情页面

Django个人博客开发十三 | 注册登录

Django个人博客开发十四 | 评论区

Django个人博客开发十五 | 网站地图

Django个人博客开发十六 | Haystack 全文搜索

Django个人博客开发十七 | 功能完善

Django个人博客开发十八 | RESTful API接口

Django个人博客开发十九 | RSS订阅

六、功能

①Django 自带的后台管理系统,方便对于文章、用户及其他动态内容的管理

②文章分类、标签、浏览量统计以及规范的 SEO 设置

③用户注册登录

④文章评论系统,支持 markdown 语法,二级评论结构和回复功能

⑤强大的全文搜索功能,只需要输入关键词就能展现全站与之关联的文章

⑥RSS 博客订阅功能及规范的 Sitemap 网站地图

⑦RESTful API 风格的 API 接口

⑧炫酷的支持Markdown语法的评论区

⑨及时的消息通知

七、总结

初学 Django 时学习资源一大把,多的就像书架上的书,有些根本连目录都没看过,即使有的看了脑子中没有一个项目概念,苦恼无比。

自学一般是这么个流程: 视频 -> 网络教程 -> 读书

初学看视频、会点基础后根据需求做点东西卡壳时Google网络教程、进阶需要看书

视频基本都是:天天生鲜、个人博客等

网络教程:菜鸟|学Python、廖雪峰、自学堂

看书就很随意了,我是没看过书,不知道有什么比较好的书

其实在自学过程中使用最多的应该是:百度、Google

基本是遇到问题就是搜索,搜索到的文章基本都是只言片语,有的甚至千篇一律,解决问题的效率极低

这个系列打算将自己从个人博客的构思、开发、部署整个阶段详细记录下来,

这是第一版,虽然细节不到位,但是还算完整,如果在阅读中发现有表达错误,或者知识点错误,或者搞不懂的地方,请及时留言,可以在评论区互相帮助,让后来者少走弯路是我的初衷。我也是一步步摸着石头走过来的,深知网络上只言片语的图文教程,给初学者带来的深深困扰。欢迎在评论区指出错误,丰富此教程让更多人少走弯路。
我也会不断升级这个教程

八、展望

把我的个人站点使用 Django Rest Framework + vue.js 进行升级改造,所以现在,有时间也在学习 vue.js

Vue + ElementUI + Webpack + VueRouter

发现 VUE 也有像 Bootstrap一样好用的 ElementUI,感觉比 Bootstrap 还牛逼

———————————————————————————————————————————

你可能感兴趣的:(django个人博客开发)