针对移动设备的内容管理系统

时间:2009-11-30 20:54:39

标签: mobile mobile-website content-management

如果我想为移动设备实施CMS,应该考虑哪些要点? 例如,使页面尺寸更小,使用优化(小)图片。还有其他想法吗?

在将为桌面浏览器设计的网页转换为易于在移动浏览器中显示的网页时,还可以应用哪种规则。

我知道移动设备在容量和属性方面差异很大,但仍在尝试列出一些规则。

此主题也欢迎任何其他想法,建议,问题和建议。

感谢您的意见和答案。

2 个答案:

答案 0 :(得分:1)

我们用过的一对......

针对移动设备的cms应该能够检测设备类型并检测(或拥有数据库)屏幕分辨率,以便可以适当缩放内容,尤其是图像。

渲染引擎还应该能够确定设备是否可以处理HTML或WAP并适当地切换标记语言。

输出上的分页功能与渲染非常大的页面(如果内容图像很大)相比也很有帮助。

与相应的网站CMS进行清洁集成(因此内容不需要双重制作)也很有用,如果tere实际上是一个相应的大型网站。

答案 1 :(得分:1)

简短的前言,我在下面列出的所有内容都是我工作的公司的主要产品,或已经制定出解决方案,这个答案的整个目标是给你指点。


识别手机

在将移动设备作为网络环境处理时,您必须正确识别手机。这应该是最优先考虑的事项。以下是识别手机及其功能的几个问题:

  • 不要使用userAgent.contains("iPhone")检测方案。已经有大量的网络机器人和其他应用程序在其用户代理字符串中包含iPhone,因此您无法正确识别它们
  • 并非所有手机都会发送用户代理标头。但有些手机会发送UAProf网址,其中包含RDF格式的所有手机功能。不幸的是,这引入了接下来的两个问题:
  • 显然您将无法访问每个设备数据,并且您必须使用公共数据存储库,例如WURFL。然而,这些数据库不完整,略微落后或不包含您想拥有的数据。对于初始数据集,它们是您最好的选择。
  • UAProfs谎言。是的,它们包含虚假信息 - 很多!部分原因是制造商忘记更新XML,部分是因为UAProf文件是在手机开发过程中编写的,正如我们所知,功能在开发过程中会发生变化。
  • 依赖某项功能时,请确保您不依赖于特定手机的特定版本。例如,BlackBerry有一项名为Tile的功能,它基本上是一个非常奇特的书签,但你可以不仅仅是为所有黑莓手机提供服务,你必须确定实际手机的操作系统版本才能提供正确的平铺变体。触摸屏也是如此,iPhone不是第一款带触摸屏的,而且肯定不是唯一一款 - 也不要指望设备只有一种形式的输入,例如{{3}有一个触摸屏,物理键盘,甚至手写笔。

创建实际页面

值得庆幸的是,这是人们同意的,在创建页面时,您应该使用Nokia N900。但是哦,人们希望事情变得如此简单......

  • 所有手机都有不同级别的XHTML-MP / CSS支持。例如,如果我没记错,一些较旧的黑莓手机不支持background-color块元素。或标头标签。当连续几个元素时,我们也看到了span元素的错误排序。哦,由于某种原因,桌子真的很难。基本上,你必须降低标记/样式技巧。
  • 您无法通过使用功能本身来测试功能的存在。如果您想检测JavaScript支持,您可以认为仅为此目的向页面添加一些JavaScript会工作,对吗?不,这会导致大部分手机访问您的网站。当然,新手机不会崩溃,但并非每个人都在过去12个月内购买了手机。此外,移动特定的JavaScript API:每个制造商都有所不同,另一个例子是目前至少有三种不同的API:用于基于JavaScript的地理位置检测,它们都不能与其他API互操作。

在普通CMS功能(安全性,内容管理和转换,缓存,模块化,访问者跟踪和诸如此类)之上添加所有这些功能,您应该了解一切如何影响所有内容和你应该如何考虑制作自己的成本。

事实上即使这有点违背了SO的一般精神,我强烈建议您获得一个易于制作的解决方案,例如我们的,并将其用于您的网站建设需求。毕竟,我们的产品有七年的专业发展。