随着智能手持设备的爆发式增长,移动站点以及移动手机App也如火如荼。这里分享了一下关于Drupal的desktop和mobile站点的架构思路,现在把其中一些内容整理一下,分享给大家。
基于Drupal的web和mobile站点并行的架构,主要有以下4种情况:
A). Responsive设计 (响应式设计)
B). 独立主题
C). Drupal的多站点以及domain模块配合使用的多站点结构
D). SAAS (后端数据服务+前端展示)
下面,我分别就每一种架构思路做一个简短的描述。
第一种,响应式设计。
优点:方便、快捷,一套代码走天下。
缺点:响应式设计本身的缺点,复杂站点不实用,开发的难度。
第二种,独立主题。
最简单的就是用mobile_switch检查用户的user-agent,然后切换主题。
这里还有一个小问题,就是如果需要移动端返回数据和前端不一样的时候,还要多写一个menu_callback,比如如果存在一个callback_mobile,就调用callback_mobile,默认就是callback函数。
第三种,多站点结构。
Drupal默认支持多站点,共享某些模块,配合domain模块,可以共享一些node内容,也可以方便实现drupal的桌面版+移动版,不过多站点的开发也需要额外的工作,因此也是需要额外的开发工作。
第三种,SAAS。
Drupal+Services模块,形成一个数据中心,分享JSON的数据给前端。如果是WEB,WEB+JS。如果是mobile,HTML5+CSS3+JS调用后端数据即可。
优点:分离、容易升级前后端。
找了一张图,比较能说明一下移动和桌面站点的技术架构,供大家参考一下。