-1

我有一个复杂的 php/mysql/js 网站。我想创建一个移动版本。根据网络上的阅读,我认为它必须是一个专门的精简站点,如 m.google.com 或 m.yahoo.com,而不是响应式站点,因为当前站点具有多个列和图像。(它已经可以在移动浏览器上运行,但会让人眼花缭乱,而且还远未优化。)

我认为理想的版本是拥有一组文件,并且在检测到移动浏览器后只需在不同的样式表中 swqp。但是,该站点不是为此而构建的,这不是一个现实的选择。网站也没有使用模板构建。

另一方面,我不想重写所有的逻辑和数据库查询。

我能想到的两个选项如下:

选项1:一组文件,即一个网站。我可以检测移动浏览器并设置会话变量。然后在每个页面上,我会检查移动会话变量,如果存在,则显示针对手持设备优化的标记。

选项 2:将网站文件复制到单独的目录,例如 mobile。然后重做这些文件中的标记,使其针对手持设备进行优化。

我是否仍然可以执行选项 1 并让网站拥有自己的子域,如 m.site.com

当只是换出不同的样式表或使用单独的模板时,移动网站的最佳实践不是一种选择。

在此先感谢您的任何建议。

4

1 回答 1

1

如果您绝对确信您需要单独的标记,那么最佳实践通常是首先将您的业务逻辑与表示层分开,以便您可以重用相同的后端逻辑,并动态地提供不同的前端视图/模板。Zend Framework、Codeignitor、Symphony、CakePHP(以及许多其他的)等 PHP 框架使这变得相对容易。

至于您是使用子域(m.mysite.com)还是会话变量,任何一种方式都可以很好地工作。在 PHP 中,您可以检查 $_SERVER['SERVER_NAME'] 以查看是否正在使用 'm' 子域,或者同样轻松地检查会话变量。

于 2013-04-04T00:03:33.607 回答