扩展GET和碎片功能 CMSTOP将成为门户整合利器

2019-03-11 10:08:35来源: Chinaz用户投稿 阅读 ()

新老客户大回馈,云服务器低至5折

说老实话,从来都没有哪一个CMS有如此高的期待过,这段时间基本上每天早上起来都会搜索一下CMSTOP的相关消息,也许是从PHPCMS中看到了CMSTOP的希望吧。PHPCMS虽然已经够在下这种不是程序员却又喜欢改程序的站长的来已经很够发挥了,然而PHPCMS的框架基本定下来了,淡淡风离去后的几个版本都虽然有不错的更新与改进,然而似乎已经不是我所需要的了,于是有了对CMSTOP的无比期待,CMSTOP应该是一个全新的构架,也正是因为如此,他可能在继承PHPCMS原有强大功能(当然应该以其它表现形式呈现)的基础上有更大的突破,至少一出来就相当于是PHPCMS的升级版本。

他主页上描述了许多功能,也似乎很有诱惑力,然而想想落叶真正需要的也急切需要的功能有如下几点:

1.GET功能的扩展:增加对Acess,SQL server等其它外部数据源的读取功能

目前PHPCMS的GET功能只能读取MYSQL数据源:

{get dbsource="bbs" sql="sql查询语句" rows="10"  page="$page" }
{$r[id]}等HTML代码排版
{/get}

虽然读取外部MYSQL数据源这一点已经够落叶很好的发挥了,然而如果能增加对Acess,Sql server等其它外部读取源的读取,那么对不同语言的网站系统数据间的整合将会变得非常便利。不知道其它朋友们是否有这种需求,反正落叶在整合动易系统做的主站、DZ论坛、UCHOME、PHPCMS做的其它子平台时,非常需要GET能支持对SQL Server数据库的读取。事实上,前不久,不经意发现科讯CMS(ASP)已经有这个功能(如下图),在PHP+MYSQL架上实现这一点应该也不是难事,应该只需对模板解析函数作适当的修改就可以实现了吧(当然,肯定有很多其它细节要考虑的,如数据缓存与负载、安全性等)。

图:科讯CMS读取外部数据源功能截图

如果CMSTOP能够继承PHPCMS的GET功能,并对其进行扩展,使之支持其它类型外部数据源的调用,那么落叶用CMSTOP来另建网站平台,并整合原有动易文章系统、DZ论坛、UCHOME、HDWIKI及几个PHPCMS平台的系统,构建一个强大的门户级资讯平台不在话下。要知道,由于系统整合的问题,早年用动易ASP系统建立的主站现在已经成鸡肋了,继续用他来做资讯和资源吧,后面整合越来越困难,换程序吧,积累了多年的数据转换起来比较麻烦,况且动易系统本身就功能而言还是非常完善和稳定的,现有的PHP类CMS系统在稳定性上都还有很多不够的地方,所以成了进退两难的局面,急需重新构建一个整合各个平台的系统来打破这个僵局,PHPCMS框架已定,改动与扩展的可能性不会太大,所以淡淡风的CMSTOP也就成了一个很大的期待。

2.碎片功能的扩展与动静结合模板技术

最近在利用PHPCMS整合调用其它系统数据资源的过程中始终纠结于一个同样的问题:生成的静态页面中动态变化内容的更新问题。

一般首页、栏目页、列表页在更新内容后都会即时自动生成,这样即使生成静态,其所调用的动态更新的内容如最新文章列表、热门点击排行、最新推荐内容等都会实时自动生成,然而内容页就不一样了,内容页基本会在添加内容时生成一次,和模板有大改动时生成几次,然而随着数据量的增大,是不可能每次都全站内容页生成的,这样问题就来了,内容页侧边栏调用什么类型的内容就很不好考虑了,PHPCMS默认模板中调用的是该文章所在的栏目的最新文章、相关文章、热门文章,很显然这是个明显的逻辑错误,除非他考虑的是用户每隔一段时间都全站生成一次。

落叶认真分析了CHINAZ、ADMIN5及51CTO等网站的内容页侧边栏的调用,CHINAZ调用的推荐文章、热门图片文章排行和论坛推荐帖子,ADMIN5内容页是调用的热门新闻、推荐新闻等,51CTO内容页是调用的栏目推荐、全站热点等。可以看到他们都是静态调用的,并且都基本保证了是最新的即时性,很疑惑他们是怎么做到静态页面动态信息实时性更新的。他们每次都全站生成?显然不可能,数据量那么大。

一般比较大的门户站在解决这个问题地都会在服务器上开启“服务器端包含文件”扩展,将静态页面布署为.shtml扩展名,这样可以实现静态页面中的局部动态更新,然而落叶认为这也只能算是一个退而求其次的解决办法。

看到了PHPCMS的碎片功能,本以为他能够做到动态页面的局部更新,然而最后发现,他还是只能借助.shtml页面来实现(详见:Phpcms2008 特色介绍之 碎片http://bbs.phpcms.cn/thread-80242-1-1.html),并且发现PHPCMS中的碎片功能只能简单的手工添加信息,连模板标签都不支持,那这样的碎片功能就有很大的局限性了,落叶在实际使用中也是很无奈,很希望能将碎片功能进行扩展,至少支持模板标签解析,最好能实现非基于.shtml的静态页中的动态内容更新。

事实上,前天发现.NET平台的SiteServer CMS的动静结合技术已经解决了这个问题,下面截图是SiteServer CMS官方产品介绍性能介绍页面中的截图:

虽然具体效果怎样,落叶并没有试用,但既然有CMS实现了,那么PHP+MYSQL构架下是否也应该能实现呢?期待CMSTOP能解决这一问题。

以上两点是落叶在实际进行网站系统数据整合过程中是切身感受,也许本来通过对程序进行更改或者说二次开发,数据调用通过JS调用等都可以实现,事实上在尝试整合动易ASP系统与DISCUZ论坛的过程中落叶目前也是直接更改动易的程序,在ASP程序中直接读取DISCUZ论坛MYSQL数据库中的数据,但这并不是最好的也不是最常规的做法,一方面造成了大量代码冗余,也降低了数据库执行效率,当然很大程序上也受限于落叶自身的水平了~~

如果CMSTOP能扩展原PHPCMS中的GET和碎片这两个功能,毫无疑问,他将成为门户整合利器!

作者:落叶 info @ lyrs.net 博客:http://www.lyrs.net

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:扯谈网页游戏的推广

下一篇:电子商务网站搜索引擎优化 过程和策略分析