现在市面上也有许多的完善的小说系统了,今天来分享下利用帝国CMS如何开发小说系统,这里只说大概思路和部分主要代码。
帝国CMS开发小说系统思路
小说系统最复杂的莫过于章节了,其实也没多复杂,精准像素研究了市面上大多数的帝国CMS小说系统模板,大多数都是利用多数据表,数据表之间利用ID关联来完成章节调用。
首先我们需要建一个“小说库”的数据表,用来存储所有的小说简介信息,比如小说的封面、小说作者、小说更新时间、小说是否完结等基本信息,相当于小说的封面页。
然后我们在创建一个小说章节数据表,用来存储所有的小说章节信息了,这里就相当于小说的目录页了。
我们通过小说章节录入指定的小说库封面信息的ID来达到,小说库调用所有章节的功能。大致的代码如下:
[e:loop={"select * from {$dbtbpre}ecms_novel where downid={$navinfor['id']} order by id asc",0,24,0,'',''}] <li style="width:200px;text-overflow:ellipsis;white-space:nowrap; overflow:hidden; "><a href="<?=$bqsr['titleurl']?>" style="font-size:14px" title="<?=$bqr['title']?>"><?=$bqno?>.<?=$bqr['title']?></a></li> [/e:loop]
这段代码放在小说库的内容模板内,通过当前小说库信息ID来调用小说章节ID等于当前信息ID文章,就达到了小说章节的功能了。
最后就是小说的阅读页面了,其实也就是调用[!--newstext--]编辑器内的内容了。不过需要注意的是,小说系统我们一般利用帝国CMS的内容存文本功能,这样能大大减少对数据库的压力。
这样newstext的内容会以文件的方式存储为本地,而不会到数据库去了。这样利用帝国CMS如何开发小说系统就完成了。
论坛也有好多人指出这种方式并不是非常的高效,首先录入信息就非常的麻烦,不过我觉的对于一个中小型小说站和新手来说,这种方法也是最简单了的了。