我正在使用PHP和MySQL为我的朋友建立一个网站(或者SQLite,我还在辩论。)该网站旨在通过各种选项在线销售摄影。后端显示统计数据,最近的订单等,并允许客户端上传图像,在浏览器中裁剪它们(使用javascript和GD),为图像添加水印,调整价格,框架选项,优惠券代码等。上传图片,网站还必须调整图像大小,允许颜色更改或预设过滤器等。当一个人在前端购买图像时,将使用paypals IPN联系该网站,电子邮件将发送到买家和管理员,事情将恢复。
前端将显示主页显示最近10次上传,3页客户端可以输入上下文信息,以及将显示所有图像的图库链接(带排序选项,如按颜色排序,尺寸,价格,标签,类别等。)
购买图像时,用户将面临尺寸,框架或无框架,颜色,签名等选项。
鉴于所有这些信息,使用开源CMS(以及哪一个)或设计我自己的CMS会更容易。 (我可以在大约一个月左右的时间内为这个网站设计一个快速系统,如果这就是它的内容)
让这样的项目得到照顾的最佳方式是什么?
由于
答案 0 :(得分:3)
有很多开源的cms。 (Drupal,Joomla,Moodle等)
为什么浪费一个月重新发明轮子?我们在很多网站上使用Drupal。凭借主题功能,用户管理和数据存储功能“开箱即用”,它们可以为您提供一个良好的开端。此外,随着各社区贡献模块,很有可能有人已经为您完成了大部分工作。因此,与其花费一个月的时间来建立一个“快速”系统,你可以花一个月的时间来完善一个优秀的系统。 :)
有些人认为开源CMS的学习曲线过于苛刻或者令人费解......是的,它们很复杂,但我的经验表明这是值得的。
由你决定。
答案 1 :(得分:2)
首先让我告诉你:不要在这些网站上使用SQLite。这并不是说这个DBMS很差(尽管它真的很棒!),但它不适合一次访问您网站的多个用户。坚持使用MySQL,如果这是除了SQLite之外的唯一选择。
其次,使用开源CMS 会更容易。作为首选,您有两种流行的选择:
Drupal 具有出色的架构, WordPress 更易于使用。它们都非常强大,它们都有无数模块,它们都可用于设置小型购物网站。
看看他们并自己决定。但是肯定使用已经编写的软件可以节省数月(至少)并且可以帮助您从社区支持中受益(更新,帮助开发,如果您有可能的员工队伍)需要它。)
答案 2 :(得分:1)
如果我在你的鞋子里,我会到处寻找一个能满足至少60%要求的开源CMS。你没有提到你的编码技巧水平,但你很有可能足以定制任何开箱即用的要求'开箱即用。代码不支持。
许多开源应用程序都是高度可定制的,因此您可以安全地添加自定义代码以支持您的要求,而不会破坏源代码。这很重要,因此您可以升级CMS代码库,而无需覆盖任何自定义代码。
如果需要,您还可以在框架上堆叠开源应用程序,以获得更多开箱即用的功能,例如,drupal可以使用某些zend framework库。
您只需要具备专业知识,从可用内容中获取所需内容并进行自定义,以满足您的要求。
答案 3 :(得分:1)
这绝对是一个主观问题,可能会被关闭或转移到其他地方。
作为一家小商店,有充分理由使用服务而不是让任何人构建软件。定制软件的创建和维护成本很高,通常情况下,使用大约80%的在线产品会更好。
在谷歌搜索“摄影师网站”似乎有100多个选项。您的朋友是否需要自定义CMS?
如果您认为没有在线服务就足够了:
除非没有其他选择且您有大量持续预算,否则不要设计自己的CMS。
虽然今天的项目范围可能很小,但随着时间的推移,您的朋友会想要添加新功能(Facebook集成,flickr集成,通过视网膜扫描登录等)。通过使用开源,他们将能够使用现成的插件代码添加这些。
当您使用开源CMS时,您可以让他们在将来让其他人对其进行操作。聘请Drupal或Wordpress程序员进行几天的定制工作或支持是没有问题的。对于另一个程序员来说,学习自定义CMS需要更长的时间并且更昂贵。
您可以专注于对您的朋友最有价值的项目部分。不是创建登录系统,构建Flash上传器或管理付款流程。其他人已经处理过这些事情。利用这一点。
您获得了广泛使用的CMS的宝贵知识。您将学习如何阅读其他代码并根据您的意愿进行修改。稍后当您需要构建自定义解决方案时,这将非常有用。
我建立并维护了一个自定义CMS六年。该公司仍有数百名客户使用它。如果他们可以将它们全部移动到Drupal / Wordrpess,他们会更开心。
要注意的一件事:确保您的朋友可以使CMS保持最新状态。这些平台有不断的安全版本,因为它们经常受到脚本小子的攻击。攻击者也会发现你工作中的缺陷,但他们无法直接访问代码,所以他们会对它更慢。
答案 4 :(得分:1)
今年年初,我参与了一个非常相似的项目,要求我使用Drupal,我对整个Drupal场景都很陌生,我必须说这是一次很棒的体验,一旦你超越了学习曲线,发现你得到了所有东西的钩子,你将开始做你的自定义模块,将GD用于图像处理,我最终使用exec或类似的东西来使用整个ImageMagick framework,我了解你的要求是独一无二的,与我的不同,但我认为Drupal会让你在那里比开箱即用解决方案更快。
答案 5 :(得分:1)