首页/ 填坑/ 文章详情

MySQL获取上一篇与下一篇的文章

作为一个纯手工制作的博客网站,明知还可以增加许多功能,但UP主特别懒,懒延症发作了。也不是真的太懒,主要平时每天对着代码,改了又改,修了又修,下班后那有兴趣再碰代码呢!玩游戏不香,看番剧不自在么?

鉴于此,网站大改版是不可能的了,一没时间,二没动力。可小改动还是有的,最简单点添加文章的上一篇与下一篇功能。

新增功能的优点:

- 丰富文章页面,扩展更多的特色区域
- 提升用户体验,快速切换上下文章
- 深挖SEO节点,增强文章的关联性

Posts表结构:

MySQLCREATE TABLE `posts` (
  `post_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '文章id',
  `post_author` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '作者id',
  `post_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '文章创建日期',
  `post_content` longtext NOT NULL COMMENT '文章内容',
  `post_title` text  NOT NULL COMMENT '文章标题',
  `post_cover` varchar(255) NOT NULL DEFAULT '' COMMENT '文章封面图片',
  `post_status` varchar(20)  NOT NULL DEFAULT 'publish' COMMENT '文章状态',
  `post_type` varchar(20) NOT NULL DEFAULT 'post' COMMENT '文章类型',
  `post_pageview` bigint(20) NOT NULL DEFAULT '0' COMMENT '文章阅读数',
  PRIMARY KEY (`post_id`),
  KEY `post_author` (`post_author`),
  KEY `type_status_date` (`post_type`,`post_status`,`post_date`,`post_id`)
)

获取文章上一篇post_id:

MySQLSELECT MAX(post_id) AS post_id FROM posts WHERE post_id < 1 AND post_status = 'publish' AND post_type = 'post'

获取文章下一篇post_id:

MySQLSELECT MIN(post_id) AS post_id FROM posts WHERE post_id > 1 AND post_status = 'publish' AND post_type = 'post'

※ 获取文章有个BUG,当上下文章没有时,获取post_id为Null,可以根据UI表现自行调整样式。

文章评论0 records

最新 最早

0

最新评论Latest comments

big2catbig2cat 08-27 16:11
然而没什么用,smartpss不兼容老录像机,就算能看回放,很多时间点在回放里也看不到
HentaiCatHentaiCat 2020-12-30 10:22
考科目二全程很紧张,考了三次才过,有次侧方入库直接pass,100分扣完,呜呜呜~
猫猫酱猫猫酱 2020-11-12 10:56
一入多肉深似海,说多都是泪
soulkunsoulkun 2020-11-05 15:54
IconFont的图标真的很好用!!!
无限链霉球菌无限链霉球菌 2020-11-03 11:41
药店,了解一下(`・ω・´)