实现PHPCMS多站点共用一套模型已解决_网站建设

发布时间:2018-12-24 10:45:36 来源:青锋建站 作者:青锋建站

PHPCMS实现多站点共用一套模型的思路分析

  原来默认的phpcms需要对每个站点单创建栏目模型,但是我们经常用到的模型也就几种。如果新建站一个站点还要再创建一个模型的话,不仅重复了工作量而且还让模型字段占用过多的数据库。当模型较多时,调用模型字段将便查询的时间变长,降低了效率。
  青锋建站给大家想出的一个解决方法是让网站的超级管理员对模型进行分发,实现多个站点共享一个模型,而不是让每个站点管理员重新创建模型。当然这是集中管理的理念,主要应用于网络公司给客户做网站时可以提供效率,如果是个人站长做站群的话,更是非常合适。
  青锋建站实现PHPCMS多站点共用一套模型的工作过程是:首先对管理员模型进行改进,管理员可以创建共享模型和自主模型。自主模型单独创建数据表和模型字段,而共享模型只创建站点与模型对应关系、模型字段而不创建数据表。在进行模型分发时,将创建新的站点与模型对应关系、和站点数据表,不再创建模型字段,实现多个站点共享模型。而子站点管理员对共享模型没有修改,编辑的权重,只有管理员拥有。青锋建站的PHPCMS多站点共用一套模型理念主要侧重集中管理,在灵活性上不如系统默认的理念,主要是用于服务商,因为客户一般没有技术水平进行后台高级管理,这些工作落在了服务商,因此集中管理将大大节省服务商管理网站的时间,提升了效率。
  当然目前只是思路分析,实现上需要有一定的PHP基础,请大家关注青锋建站熊掌号,我们将近期发布PHPCMS实现多站点共用一套模型相关功能代码,以下是实现过程中的细节分析。

PHPCMS模型增加过程:

1、往v9_model数据表中添加数据:添加数据模型表单项:数据表名称,模型名称,描述,使用的模型等信息;
2、创建当前站点模型的数据表,并往v9_model_field插入当前模型的字段并更新缓存;
3、添加v9_type表的数据,并更新缓存。

PHPCMS实现多站点共用一套模型的细节分析

  在对原有的phpcms系统进行修改前需要对原来的系统有充分的了解,入口点当然是模型的业务逻辑和实现的脚本函数。首先要分析v9_model、v9_model_field、v9_type这几个数据表。然后通过实现模型与模型域数据表多对一的关系就可以实现多个模型对应一套表单模型(这里引入模型域组的概念)。
再通过模型分发实现多个站点与一套模型域对应就可以实现多个站点共用一套模型的功能。
实现PHPCMS多站点共用一套模型需要修改的脚本
phpcms多站点共用模型需要修改的脚本
通过修改这几个表和脚本就可以实现phpcms多个站点共享一套模型,相信大家一看就明白了,如果是新手还是期待青锋建站的代码打包吧。最新怎么实现phpcms多个站点共享一套模型的插件已经完成,请到青锋建站-“PHP源码”栏目前去下载。
分享到:

Copyright © 2016-2026 青锋建站 版权所有