CMS是否适用于我的网站


CMS or not for my website?

我正在建立一个网站,newfutureuniversity.org,我不确定我是否应该在CMS下重建它。我可以做程序PHP,但不能做OOP PHP(如果需要,我可以学习它)。我一直在为这个问题而苦苦挣扎,所以我决定在这里问它。

我的页面现在的工作方式是这样的:每个页面的开头和结尾都有一个包含,每个页面都调用其他包含。例如,开头的那个调用"翻译.php"、"登录.php"、"菜单.php"等。

要求

  • 代码管理。我目前正在使用AjaXplorer。它很棒,非常完整,而且它不能做我的主机(000webhost)提供的工具就足够了。另一个好的方面是它允许具有不同权限的多个用户。我需要保留此功能。

  • 博客。我正在使用 Chyrp 写博客,因为它是轻量级的,并且实现了我的博客目标。

  • 用户。不使用任何引擎,只需在旧的普通 PHP 中构建我自己的引擎。用户可以注册、登录等。

  • 语言。还建立了我自己的。它允许我翻译每一点信息。

  • 维基。或类似。我需要(尚未完成)为页面中的文件提供高度个性化的 wiki 引擎。我还不确定是找到一些轻量级的并对其进行个性化设置还是自己做一个。另外,我应该在wiki引擎中包含CKeditor。

  • 我仍然需要考虑的更多未来功能。

如您所见,我需要一个"基础"和不同类型的引擎在不同的目录上同时运行。

问题

如果没有问题,我就不会写这个问题。这些是我发现的主要问题:

  • 集中式用户。最重要的问题。因为我混合了不同的引擎,所以每个引擎都使用(如果我包括 wiki 甚至更糟)不同的用户表。我希望访问者只需要注册一次,然后就可以浏览wiki,博客,提交文件或使用相同的用户名执行任何其他操作。

  • 集中式程序员。与用户相同,但与程序员一起,我计划添加到项目中。此外,它还应该与权限一起使用。不需要,但如果可能的话,会更好。

  • 风格。不必手动更改引擎,而是默认对每个引擎具有相同的样式。这可能是不可能的,但也不是很重要(也不需要),只是很耗时。

因此,这些引擎必须构建在相同的"基础"(CMS)上,而不是在不同的目录上单独运行。我正在考虑切换到Drupal以获得巨大的支持,或者根据我在网上阅读的内容,切换到Joomla以获得"更多"可定制的。

问题

这两个CMS(或您提出的任何其他CMS)会保留所有要求并解决问题吗?还是CMS模块(wiki one,blog one等)仍然构建为独立的?这意味着每个人都将构建不同的用户表结构。使用 CMS 还有其他优势吗?

理想情况下,CMS 本身将构建用户表,然后模块访问它们而不是创建自己的表。我从未使用过CMS,所以我需要了解它们,但如果它有效,那不是问题。

如果我

是你,我会花时间学习如何使用框架,zend,代码点火器,yii等。CMS 只是在新的布局特性或简单的功能改进方面束缚您的双手。

一定要选择PHP/OOP。对于使用CMS时遇到的许多问题,您会发现很多简单的解决方案,并且您将提高编程技能,这是最重要的事情,对吗?

CMS不是一个框架。CMS 允许不了解 php、html、css 或您可能正在使用的任何其他语言的用户/管理员更改您网站的内容。在某种程度上,它不应该限制你的编码。换句话说,CMS可以是框架的一部分,也可以是你的家庭结构代码的一部分。我看到一个以"当我使用 CMS 时.."开头的响应。当您使您的网站以某种方式交互时,它是一个 CMS。您正在使用将一些文本放入数据库的表单来管理网站的内容。就像我现在输入的文本区域一样,我是使用堆栈交换CMS的用户,但我的权限比管理员少。但我再次使用 CMS。但是stackexchange正在某种框架中构建他的网站,因此您可以使用框架并实现CMS功能。

另外,尝试理解OOP,很难进入,但是当您掌握了窍门时,使用起来很棒。它大大简化了您的代码。我是通过Flash(ActionScript 3.0)学习的。我发现在那里更容易理解 OOP 的基础知识,因为您可以直接直观地输出您正在做的事情。它比PHP-OOP更容易,因为PHP和OOP实际上并不适合在一起。这是一个OOP的外观(每次都变得越来越好)。所以试着先学习OOP。

因此,作为结论,您可能会认为我会说在您选择的框架中构建自己的CMS功能。但是从头开始进入框架和 OOP 有点困难。因此,也许您应该构建一些具有非常简单功能的试错网站来学习OOP和框架。我正在学习CakePHP,因为我们说话和几年前学习OOP。这有点难。因此,请逐步完成,并考虑您要完成的目标以及为此需要什么。我认为这个话题是一个很好的开始。

只是为了记录,每个聪明的程序员,我认为你是,都在使用OOP方法,因为你不必重写代码片段,也不必复制粘贴。当你的代码很好时,你将在任何地方都没有重复的代码。当您在网站的 200 个页面上遇到错误并且知道您只需要更改一个文件而不是 200 个文件时,这很好。:)