我该如何决定是否应该推出自己的软件或使用打包的CMS(以及适当的插件)?


11

我是一位几乎没有网络经验的软件工程师,目前正在将我的Web主机和域名实际用于除我需要授予他人访问权限的文件的文件转储场之外的其他东西。我的计划是以某种方式部署个人/专业网站和博客,使用FOSS的现成产品,定制软件或带有定制模块/插件的现成组件。

我的要求是:

  1. 语义HTML(格式正确,属性正确使用,适当的微格式,样式使用CSS以及标记用于HTML)
  2. 验证HTML和CSS(XHTML,HTML4,HTML5都可以接受-只要开箱即用即可验证)
  3. 支持博客
  4. 支持以HTML格式编辑和管理我的简历,以及管理我可以下载的PDF,ODT和DOC格式的上传文件
  5. 用我知道并且托管人支持的语言编写-首选PHP,因为这对我来说最容易托管,我也很熟悉
  6. 易于获取或编写主题
  7. 支持不经常更改的静态页面(关于我),时不时更改的静态页面(项目列表),动态页面(博客,评论)和表单(与我联系)
  8. 与同一环境中的其他工具很好地配合使用-我在同一主机上使用Trac进行项目管理,并且可能会部署其他软件,例如个人MediaWiki部署
  9. 易于与其他社交媒体(Twitter?Facebook?Pandora?)集成-不需要,但会很好
  10. 网站地图和/或robots.txt的生成和维护

我的问题:

  • 有什么FOSS解决方案适合我?过去,我曾经玩弄过Drupal和WordPress-WordPress令我印象深刻,但当时它非常注重博客(我知道它最近已更改为更类似于CMS)。
  • 什么免费(但不是开源)解决方案适合我?我希望可以完全访问源,但这不是必需的。
  • 如果要自己动手,应该从哪里开始?我不希望自己动手做-我的软件工程背景告诉我,我的要求应该是通用的,而且我应该能够找到一些现有的解决方案,可以结合起来使用以完成这项工作。

谢谢。


你尝试过jQuery吗?<鸭子>
蒂姆·波斯特

@Tim Post:我想纯粹出于哈哈因素对您的评论投赞成票,但担心这会给人留下错误的印象;)
Zhaph-Ben Duguid 2010年

离题:这不是关于网站管理员的问题;为什么要投票?

@Kinopiko同意您标记的大多数帖子,但对我来说,这是一个话题。
JasonBirch 2010年

@TimPost您的“鸭子”评论阻止了我举报本来令人反感的评论。;-P
NDEIGU 2015年

Answers:


6

Buy-vs-build问题是永恒的问题。我会说WordPressDrupal都符合您的标准。我对WordPress有更多的经验,所以我会在WordPress中进行。要满足您的要求:

  1. 语义HTML(格式正确,属性正确使用,适当的微格式,样式使用CSS以及标记用于HTML)

    是的,大多数WordPress 主题默认使用xhtml都没有问题。您可能需要在html视图中手动进行与微格式相关的标记,尽管可能会有一些插件可以帮助您实现。

  2. 验证HTML和CSS(XHTML,HTML4,HTML5都可以接受-只要开箱即用即可验证)

    是的,WordPress的大多数主题都可以通过验证或非常接近验证而不会带来太多麻烦。有很多有关主题的文档。

  3. 支持博客

    是的,绝对。

  4. 支持以HTML格式编辑和管理我的简历,以及管理我可以下载的PDF,ODT和DOC格式的上传文件

    是的,只需将简历设为静态页面,并使用WordPress中的本机媒体管理工具管理上传的文件即可。

  5. 用我知道并且托管人支持的语言编写-首选PHP,因为这对我来说最容易托管,我也很熟悉

    是的,WordPress = PHP + MySQL + Apache最适合mod_rewrite

  6. 易于获取或编写主题

    是的,请参阅主题开发

  7. 支持不经常更改的静态页面(关于我),时不时更改的静态页面(项目列表),动态页面(博客,评论)和表单(与我联系)

    是的,页面是在WordPress的“页面”部分下管理的。联系表格可以很好地与诸如Contact Form 7之类的插件配合使用

  8. 与同一环境中的其他工具很好地配合使用-我在同一主机上使用Trac进行项目管理,并且可能会部署其他软件,例如个人MediaWiki部署

    是的,尽管您可能需要添加一些重写规则,以便并非所有内容都指向WordPress。我在一个子目录中运行WordPress,并让它通常处理所有事情。您可能需要添加一个说明符,以使WordPress忽略MediaWiki目录干。

  9. 易于与其他社交媒体(Twitter?Facebook?Pandora?)集成-不需要,但会很好

    是的,通过插件。默认情况下,您还可以将RSS feed引入WordPress侧边栏。

  10. 生成和维护站点地图和/或 robots.txt

    是的Google Sitemaps Generator


对于4号-我的简历已经有PDF,ODT和DOC格式。我只需要能让我轻松上传文件并链接到页面上的文件。此外,备案,链接到谷歌地图生成器是错误的-它指向联系表7
托马斯欧文斯

1
哦,可以,WordPress确实可以进行文件管理。修复了我的混乱链接。
artlung

太好了,谢谢。让我编辑我的原始帖子以反映我的实际意思(我重新阅读了一下,这有点令人困惑-看起来确实要将我的HTML /网页简历转换为PDF / ODT / DOC)。
Thomas Owens

更新了我的答案以反映问题的变化
artlung 2010年

2

我已经使用Wordpress设置了许多站点,每个站点都有不同的需求,我认为Wordpress也可以满足您的需求:

  • http://chaos.trader.name/-主要是面向页面的信息站点,带有一些博客。
  • http://ludus.unicornsrest.org/-主要是一个博客,但是具有深层嵌套的页面结构。我写了一个插件来创建帖子中页面的链接,同时允许我重新排列页面。
  • http://driia.com/-我妻子的商业网站,博客和销售网站。我写了一些插件,这些插件允许根据类别和标签将帖子自动分组到页面上,并识别出带有特定标签的帖子代表待售的珠宝或艺术品。销售价格作为元数据存储在帖子中。
  • http://barkingmad.org/-非营利性娱乐组织的广告网站。

可用于Wordpress的主题和插件的数量和质量令人震惊,但GPL许可证意味着可以完全满足您的需要,对任何不完全满足您的需求的事物进行改进。


1

我认为您不会找到任何可以做您想要的OTB的FOSS项目。WordPress很可靠,但是您需要花点时间才能生成所需的内容。Drupal可能比起初看起来更令人头疼。我知道人们喜欢它,并且我知道我已经尝试过,但是我宁愿不用担心在版本升级之间必须保持如此多的hack。

坦率地说,如果您还不熟悉FOSS,那么我会选择使用WordPress,如果需要的话可以使用定制构建插件。

需要说明的是,自从Matt Mullenweg(WordPress背后的公司Automattic的首席执行官)开始对所有人使用Richard Stallman以来,他相信并提倡任何和所有主题(主题代码,而不是图像/ css)和插件(插件代码)在他(我个人认为是扭曲的)观点中,它是WordPress的衍生作品而成为GPL。因此,如果您自己完成任务,那么您会很好,但是如果您拥有“发行版”,例如将插件分配给2个人,则您可能会自己合法地与OS绑定,这是您可能想要或可能不想做的事情。


老实说,我不在乎发布任何内容。实际上,无论如何,我可能还是会的—如果我可以做一些像样的事情,并且对其他人有用。不过,我只是对WordPress感到好奇-较新的版本真的适合不仅仅是博客吗?此外,除了主要的WordPress网站外,是否还有其他存储库或插件,模块和主题的索引?
Thomas Owens

他们现在实际上很少写博客了。基本上,它也有Pages,您可以拥有一个静态首页,只有页面,没有帖子。真的是您的电话。基本上,wordpress.org是您可以找到所有涉及插件的地方。主题...或多或少地在网络上搜寻。我个人认为diythemes.com的论题对于轻松设置/自定义非常有帮助,但是网络上确实充满了主题。还有wordpress.org仓库。警惕从任何地方下载主题和插件。有些是恶意软件,有些则只是说“网络垃圾邮件”。
2010年

1

这取决于您想做什么,要摆脱它:

  1. 学习技术栈
    我编写了大部分代码,这些代码可以为我的个人网站提供学习动力,从而使我可以快速了解自己所从事的技术的最新变化,并且随着我关注的重点发生了变化(最初是经典的ASP站点) ,然后将其移至ASP.NET 1.1,然后移至2.0,并在最近从ASP.NET MVC 1.0升级后,现在在ASP.NET MVC 2.0上运行
  2. 只需运行您的站点
    无论是在工作中,还是在业余时间运行的几个教堂站点中,我都使用了打包软件-在工作中,我们正在谈论“企业” CMS(MOSS,Tridion),它是教堂站点FOSS(N2 CMS)-因为它们提供的功能超出了我准备编写的功能。

如果您的专业是建立网站,那么就有理由使用您正在“销售”的技术,如果还有其他用途,那么我建议您将时间花在内容而不是技术上。


回应评论

然后,我建议您选择一个现货供应-我在PHP领域不能提供太多推荐,因为我担心这不是我的专长。如果您可以应付一些C#N2 CMS,则它非常灵活,但没有像WordPress这样的庞大插件/主题库,听起来似乎很适合您的需求...


我的业务不是网站,这是肯定的。我主要的专业重点是软件工程的较软方面-需求工程,流程和项目管理,设计和体系结构。但是,我对某些Web技术堆栈有些陌生(主要是因为我已经完成了后端Web开发-没有任何前端)。老实说,我希望对个人网站保持简单并强调内容。
Thomas Owens

1

我以企业级CMS为生...我个人讨厌现成的系统,如Joomla,Wordpress和Drupal。这是我的原因:

1)我工作过的地方对这些(类型)软件包进行了多次利用,因为我们更新它们的速度不够快..在某些情况下,更新可能是每周一次。一旦遭到黑客入侵,您将严重质疑为什么要走那条路...

2)WordPress的模板令人发疯。一个将具有功能齐全的管理区域,而另一个将没有功能,并希望您入侵其中的代码。在哪里看?啊!我已经部署了很多,但是每次都让我很痛苦。在我看来,Wordpress是一个博客系统……将其用于预期的工作。

3)在上一份工作中,我建立了数百个Joomla(和Mambo)站点。即使您知道自己在做什么,也要祝您好运,尝试突破那种“ Joomla布局”类型的外观...。尤其是在没有时间的情况下。Wordpress也是如此...当您在Wordpress网站上时可以告诉。不用了,谢谢。我得到报酬从事原创工作。

4)培训。尝试在5分钟或更短的时间内向某人解释Joomla或Drupal管理。我建立的CMS可以用一段(或更少)书面说明教给某人,因为我建立的CMS仅包含每个特定网站所需的工具...否则,该按钮将消失。我向您提出挑战,请他们尝试以少于电话簿中所包含的说明的方式来培训某个人,尤其是如果他们在技术上不那么精明的话。

5)符合标准...我个人不会对此有所妥协。我控制着CMS输出的所有内容,并且构建了这样的内容,以便可以在几分钟之内将十几行代码插入到任何符合HTML的模板中,从而每次生成符合代码。Wordpress可以做到这一点,Joomla和Drupal并非总是如此。

6)适销性。CMS都做同样的事情。但是请尝试与潜在客户交流,并说“我想向您收取很多费用,以定制免费的现成产品”与“这里是专门为您的需求而构建的系统”。如果这是一个好的产品,您几乎每次都会赢得这项生意。就您而言,这无关紧要。...但是谁知道,也许您可​​以为将来的项目建立功能...付款项目...。

当然也有缺点。您自己构建所有内容,这需要时间。如果您要在多个站点上进行操作,则规模经济可以降低成本。再也没有一群人会发现漏洞...同样,进行多次部署可以帮助代码演化。但是,如果您具备编写高质量代码的知识,那将是一个很好的解决方案。

祝好运。


0

听起来,对于您的用例来说,打包的CMS可能是最好的选择。

自从我上一次评估PHP CMS已经好几年了,当时我的主要要求是干净的可扩展性。当时,Joomla是一个有力的竞争者,尽管开发周期似乎很缓慢,但Xaraya看上去在智力上很有趣。

如果您有兴趣尝试一些尝试,则opensourceCMS站点允许您尝试而无需实际安装。上次我尝试使用它的过程似乎少了很多麻烦,但是我想您必须付账单。许多CMS也都运行自己的演示站点(例如Joomla演示Xaraya演示


0

如果您有很多时间,而且痒感不会消失-是的,自己动手做。否则,请安装WordPress(“ 著名的5分钟安装 ”)并给自己2个小时...这就是您需要的一个很好的主意。

我想发表一些评论以回复以前的答复-您绝对可以使用WP构建“页面”的网站,而不仅仅是博客(这对于构建具有集成博客的网站非常有用),并同意@intlect对主题的评论。某些主题的质量可能会有很大差异(也是学习/查看WP如何工作的好地方)-我被咬了几次,还升级了WP以发现主题与较新版本不兼容(然后您会发现开发人员的支持程度如何)。


0

当然,还有第三种选择,您可以使用像MODX这样不太“沉重”的CMS,这样您可以不必重新发明所有标准cms内容(用户管理,文档管理等),为您提供轻松灵活的环境来编写自己的代码。我使用过许多CMS,它们都有自己的细分市场,但是如果您想要易于开发且轻巧的东西,而无需花费数周的时间就可以理解它(某些CMS系统是真正强大的野兽...您可能不需要个人网站的东西)。MODX基本上是为要执行的操作类型而构建的,它为您提供了功能的核心,然后您可以添加自己的功能。另外,人们确实共享他们的代码,因此您可以找到代码段,模块,


我想看看这个。您能提出更多类似MODX的建议吗?
Thomas Owens
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.