我打算开发一个 Web 应用程序,它将有许多静态页面(关于,帮助,联系等)和应用程序的其他动态页面。
大多数时候,我使用 CakePHP 来开发我的任何应用程序,但是对于这个项目,我一直在考虑使用 WordPress 作为我的应用程序的框架。原因是因为在 WordPress 中,创建静态页面(易于编写静态页面内容)很容易,并且因为 WordPress 中的用户注册已经存在(我不必构建它)。
但另一方面,CakePHP 对我来说很容易,我将专注于构建我的应用程序,而不是学习新的框架。
让我知道你的想法。我应该使用 WordPress 作为我的应用程序的核心还是使用 CakePHP?
PS:我的应用程序将主要是使用 Sphinx 在数据库中查找大数据的搜索引擎,并为用户和其他一些简单的 PHP(动态)页面显示结果。
我阅读了许多关于决定下一个项目的基本框架的分析。这是结论;
(PS:过去xx年我在 WordPress 中大量编码,我是一位经验丰富的 Web 开发人员和软件架构师超过 18 年)
论点 1-“WordPress 是一个 CMS / 博客引擎,但不是一个应用程序框架”
这就像说“微软是一家技术公司”。
这根本不是真的。(是的,微软创造了很好的技术,但它是一家营销公司。例如:它的竞争优势不是创造地球上最好的技术,而是将其成功地推向业务决策者。)
WordPress 是一个可靠的应用程序平台,CMS / 博客功能是包装盒中的默认应用程序。我认为 WordPress 被认为是开发平台的主要原因 1)自定义帖子类型 / 自定义字段功能如此新颖;我们还没有看到足够的应用程序使这些功能受益。2)与其他“WordPress 低级平台”(例如 CakePHP,CodeIgniter 等)相比,WordPress 社区中有很大一部分是非技术人员。
论点 2-WordPress 不是基于 MVC,所以它不是一个可靠的开发平台。
对不起,但这不是真的。
MVC 不是每个人都应该遵循的新时代。是的,它简化了调试,使用它进行开发的结构化编码方法。归根结底,这是一种方法(除其他外),可以使您的程序员生活更轻松,并节省公司嵌入代码的宝贵投资。
插件架构和 WordPress 中基于主题的 UI 逻辑隔离对于许多目的来说已经足够了...
如果你仍然坚持使用 MVC 方法,你可以做到;WordPress MVC 像插件。
论点 3-WordPress 是缓慢的,它不能扩展为高流量的网站。
不是真的.
是的,与硬编码的 PHP 代码相比,WordPress 呈现页面的速度较慢(由于额外的进程执行开销)。但是,如果您依靠代码渲染性能来实现高可伸缩性,对不起,您对可伸缩性一无所知。
WordPress 附带了一个 zillion 缓存和性能插件,将提供一个更好的网站性能,你很难与自己的努力相匹配。
最终结论;
我不想成为第 3,434,533 位开发人员为他 / 她的网站构建登录 / 密码恢复功能。这就是为什么我选择 WordPress。
归根结底,我们在这个世界上的时间是有限的。
要考虑的一个选择是设置 WordPress 来服务您的静态页面(以避免花费时间重新实现此内容的 CMS),并使用 CakePHP 开发动态应用程序,这是您正在构建的核心。
然后,您可以将它们托管在同一个域下,如果您为 WordPress 和 CakePHP 设置相同的页面结构 / CSS,那么它应该是无缝的用户。
一个类似的例子,我有一个网站运行 WordPress 的内容管理,和phpBB的论坛,两者的风格看起来一样:
WordPress section phpBB section这意味着您必须维护两个页面主题(CSS 和 HTML)并使它们彼此保持一致,但它确实提供了发挥 WordPress 管理静态内容(关于页面)和基于时间的内容(新闻文章)的优势的优势。
如果你主要使用 WordPress,因为它没有做太多的定制 / 开发,你应该能够以低学习曲线快速运行,让你有时间专注于你的核心应用程序。
对于那些希望在 WordPress 页面中嵌入 PHP 应用程序的人来说,这是一个替代解决方案(从而利用 WordPress 的所有 CMS 功能,而无需维护多个框架 / 主题)。基本上,您需要做的就是将您的应用程序变成page template:
写你的应用程序无支持内容(页眉 / 页脚)
为您的应用准备以下代码:<?php /* Template Name: WhateverYouWant */ ?>
将其上传到您的/wp-content/themes
文件夹
在 WordPress 中创建一个新页面,并将页面模板设置为WhateverYouWant
如果您已经构建了数据库,我可能会使用 CakePHP,因为您已经精通 CakePHP。
但是,如果您正在创建数据库,您可能希望使用名为Pods CMS的 WordPress 插件,该插件在 WordPress 数据库中创建您自己的内容(称为“pods”)的自定义表。
Pods CMS 插件得到了大力支持,还有一个名为 Pods UI 的插件,它可以在内置的 WordPress Admin 中工作(为表 /“pods”内容创建管理界面)。
如果你知道一点 PHP(数组,对象和循环)Pods CMS 很容易使用,你通常会编写比使用 WordPress Codex 更少的代码。还有一些助手可以让你编写与现有 WordPress 表结构(页面,帖子,类别,标签等)交互的 SQL,除非你真正研究数据库,否则这有点复杂。
WordPress 还提供了所谓的“自定义字段”,但这并不理想,因为它只是将内容添加到现有的 WordPress 表中。但是,如果您真的喜欢使用这些插件,则自定义字段可以更好地使用许多 WordPress 插件(对于功能滑块和小部件等)。
所有这些都说,WordPress 不是最快的,根据您的设置(托管,WordPress 缓存插件),您可能会得到一个非常慢的网站。如果您决定使用 WordPress,我会尝试获得推荐用于 WordPress 的托管服务,并使用缓存插件来加快速度(如 WP 超级缓存)。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(45条)