我需要创建一个基于CMS的自定义系统。在其中,我还需要做以下事情:
现在,我从未编写过CMS系统。我也有时间限制。语言的选择是PHP,实现它的最佳方式是什么?
答案 0 :(得分:8)
“几乎在每一个案例中,我都看到过一家公司试图推出自己的产品,”简单“的解决方案正在被特殊的请求和边缘情况慢慢吞噬,直到它与那些过度杀伤解决方案一样复杂 - 但建立在从来没有打算过复杂的基础。“
QFT
我们过去常常维护自己的CMS,这个CMS开始时非常简单,然后请求来自客户端,几乎不可能让代码保持统一,不同的人在项目中实现它。缺乏代码版本控制是罪魁祸首,但客户也希望每个小东西都改变,直到每个站点的包都是唯一的。跟上它变得不可能和代价高昂。
我们切换到Drupal并且生活变得更容易。
答案 1 :(得分:5)
答:仅用于学习目的。
答案 2 :(得分:4)
CMS系统以及错误跟踪器应该被认为是Not Invented Here综合症可能成为巨大陷阱的典型例子。
它们都有着共同的特性,看起来就像从一开始就实现的非常简单的系统一样,第三方选项似乎过于复杂,而且对于你显然需要的“简单”CMS来说是过度的。
几乎在每一个案例中我都看到过一家公司试图推出自己的产品,这种“简单”的解决方案正在被特殊要求和边缘案件慢慢吞噬,直到它与那些过度杀伤解决方案一样复杂 - 但建立在一个基础之上从来没有打算用于复杂性。
找到一个好的第三方解决方案。你将来3年就会感谢你。
答案 3 :(得分:4)
有趣的是,我们在这种情况下使用“不要重新发明轮子”的表达方式。公元前2000年至公元前1500年的世界历史由战车驾驶员主导,他们完全重新发明轮子。在此之前,马车车轮是坚固的木板,这使得马车的速度不足以超过你试图射箭的愤怒的武装人员。 (更轻) spoked 轮的发明使他们能够全天开动射入人群。
我遇到的大多数CMS系统都是相当于大而坚固的轮子的编程(我说 square 轮子被白蚁吃掉了一半,但这在所有情况下都不公平)。也许这家伙有发明更好的车轮所需要的东西。
答案 4 :(得分:3)
定义“最佳”。
如果“最好”意味着“运行起来最快”,我会说你唯一的选择是购买一个或找到一个好的开源CMS。阅读你的“小经验”后,这是真实的。
我建议您使用Google进行开源CMS并将原型排在前三位。
编写自己的应该是你的最后选择。为什么要延迟释放并永远承担维护负担?
答案 5 :(得分:3)
答:否。
答案 6 :(得分:3)
对于我的客户,我几乎总是创建自己的CMS。几个原因:
是的,需要更多时间,但它会为您提供更多机会和灵活性。
答案 7 :(得分:2)
查看CMS Matrix以了解各种CMS的比较。
答案 8 :(得分:2)
这是有史以来最无聊的答案:“这取决于”
它取决于什么?好吧,最重要的是:
格尔茨
back2dos
答案 9 :(得分:1)
时间限制意味着您可能没有时间做正确的事情,最好从其他人那里获取CMS。只需配置它以满足您的需求。
编写自己的应用程序时,您需要为非常挑剔的客户提供非常具体的自定义解决方案。否则,抓住另一个CMS将为您节省数千个编程工时。
答案 10 :(得分:0)
你绝对要写自己的吗?有几种很棒的(免费的)PHP CMS开源解决方案可供使用。为什么这些不适合您的需求?
您是否考虑过将文字换成博客?
您的问题具体是什么使得开源可用解决方案不适合您?