当前位置: 首页 > 工具软件 > Drupal > 使用案例 >

什么是Drupal?

邹昊
2023-12-01

Drupal是使用PHP编写的流行的开源内容管理系统。 已经在21世纪初由比利时学生创建的,现在权力的一些最突出的网站网页(WhiteHouse.gov,Weather.com等)上。 它通常被视为CMS和WordPress和Joomla等CMS的竞争对手。

Drupal项目最重要的组成部分之一是其支持者社区 (贡献者,开发人员,福音传教士,企业主等)。 Drupal协会是这个社区中的佼佼者 ,负责“促进和支持Drupal软件项目,社区及其发展”。

与之前的版本相比,Drupal项目第8个主要发行版有了巨大的飞跃,现已上架。 它带来了代码,实践和心态的严重现代化。 许多人认为这种转变是从CMS的传统观念到真正的内容管理框架 (CMF)的真正转变,后者为构建复杂的应用程序提供了绝佳的平台。

在本文中,我将回答人们在首次启动或考虑这样做时对Drupal的一些更常见的问题:

  • 对我来说合适吗? 瞄准谁?
  • 如何安装,我可以在哪里托管它?
  • 如何以开发人员的身份开始使用它?
  • 我有什么扩展功能或样式的选项?

Drupal的目标是谁?

自项目开始以来,Drupal已经从主要用于构建较小站点的工具发展到现在可以为企业级平台提供动力的工具。 特别是使用Drupal 8,站点构建者和开发人员可以轻松地从小型网站扩展到具有许多集成的大型平台。 例如, 采用Composer不仅使您可以将外部库带入Drupal项目,而且还可以将Drupal用作更大的应用程序和库项目的一部分。 可以肯定地说,Drupal具有足够的灵活性,可以满足众多项目的需求。

在开发方面,Drupal始终有一个相对封闭的社区-并不是因为人们不友好,相反,而是主要是因为代码通常是以Drupal的方式编写的(导致有时被称为Drupalism )。 这意味着任何新手开发人员都需要学习,但其他PHP项目的开发人员也没有兴趣参与其中。

这已不再是这种情况。 尤其是随着Drupal 8的发布,社区现在在不同的开源项目中促进了代码可重用性和最佳实践的新思维。 积极参与PHP框架互操作性小组是这项工作的一部分,在Drupal 8内核中使用许多流行的Symfony组件证明了这一承诺。

通过此举,Drupal社区通过欢迎来自其他社区和项目的许多开发人员而变得更加富有,并且肯定会进一步发展。 因此,如果您是Laravel开发人员,那么查看Drupal代码将不再那么令人生畏。

如何安装Drupal,以及在哪里托管?

传统上,Drupal的安装过程相对简单,特别是对于至少了解Linux环境的人们而言。 只需将项目放入Web服务器可以运行的文件夹中即可(该文件夹必须使用PHP并具有MySQL或MariaDB数据库)。 然后将浏览器指向/install.php文件,并按照以下步骤进行操作即可完成其余工作。 您将看到的最重要的屏幕是您选择要使用的特定数据库的屏幕。

需求而言 ,LAMP堆栈(Linux,Apache,MySQL和PHP)环境一直是运行Drupal的最爱。但是,绝不限于此。 存在将其直接安装在Windows或Mac上(例如,使用Acquia Dev Desktop )以及运行其他Web服务器的Linux系统上的解决方案。

如果使用自己的设置,最简单的方法是使用LAMP服务器进行托管。 为了获得更高的性能,您可以使用Nginx替换Apache,但是随后您必须注意一些特定的配置,否则这些配置将在Drupal随附的.htaccess文件中处理。

但是,如果您不想维护自己的托管服务器,那么可以使用以下三个主要的Drupal托管托管提供商的主要提供商: AcquiaPantheonPlatform.sh 。 这些还提供了易于更新和开发流程的工作流。 除此之外,您正在寻找与Drupal开发公司进行完全托管的托管。

我如何开始为其开发?

开发Drupal网站通常是您非常喜欢或根本不喜欢的事情。 这是因为当您初次接触Drupal时,遇到了很多其他项目没有的特性。 因此,如果那些让您喜欢的话,您将永远爱它。

随着在Drupal 8中离开这个 ,情况已不再如此。 您仍然有很多可以爱或恨的Drupalism ,但是现在您还拥有外部组件,例如Symfony或Guzzle,最重要的是,它具有更现代的通用代码编写方式(OOP,设计模式,可重用组件等)。 )。 因此,使用Zend构建网站的PHP技巧将派上用场。

进入Drupal开发的一种好方法是遵循一些在线视频课程。 有两个非常适合此目的的资源,最著名的是Drupalize.me 。 但是,如果视频不是您最喜欢的媒体,则还有许多书面教程和指南可帮助您入门。 请查看以下链接,了解您可以采取的一些第一步:

由于Drupal 8是全新的,因此您会发现有关Drupal 7的更多学习内容。尽管如此,社区最近的关注点已转向Drupal 8,因此您可以期望越来越多的此类资源会出现。 而且,如果您没有任何版本的Drupal经验,那么最好只专注于Drupal 8,因为两者之间的变化很大,也许您会面临不必要的挑战。

如何扩展Drupal?

Drupal核心安装的主要扩展点是其模块系统。

模块用于封装更大的可重用功能块,这些重块可以/应该在不同站点上工作。 除了核心模块,还有大量的贡献的人 ,可用于安装。

当然,大多数仍然仅适用于Drupal 6和7,但是社区也在追赶最新版本。 通过在Drupal 8中合并一些受欢迎的贡献模块,以及扩展核心可以直接使用的功能的范围(与Drupal 7比较),也可以缓解此问题。

最后,自定义模块(您自己编写的模块)是添加所需功能的主要方式,而功能不能通过贡献模块获得。

安装模块可以允许您插入各种功能,但是您不应将其视为增加过多功能的绿灯。 坚持您实际需要的总是更好的,并且不要害怕在这方面至关重要。 您也可以在贡献的代码和您自己编写的自定义代码之间找到一个良好的平衡

另外,由于我们在谈论开源软件,因此您应始终评估安装的模块。 以下指标是需要注意的良好示例:下载和使用次数,提交频率,维护人员参与度,问题队列状态。

并且也要牢记安全性。 强烈建议您同时保持Drupal核心和所有贡献模块的最新状态,因为这将极大地帮助您保护站点和服务器的安全(尽管并不能确保此安全)。

那么样式呢?

Drupal网站的样式层由主题来处理(大部分)。 主题与模块相似,因为它们是扩展点,但是它们具有不同的职责。 它们包含样式,前端库以及大多数情况下用于输出数据的模板文件。

与以前的版本相比,Drupal 8有了很大的进步:流行的Twig引擎已被用作模板,主题化仅限于Twig模板文件,调试和覆盖模板变得更加容易,等等。后端开发经验(DX),使主题层对非Drupal人群更具吸引力。 前端开发人员现在可以轻松地处理Drupal主题,而无需了解后端的来龙去脉。

Drupal核心带有许多主题,可以为您提供示例,但您也可以从中进行扩展。 也有一些与模块相似的主题 。 流行的前端框架,例如Bootstrap或Zurb Foundation,已经为Drupal 7提供了成熟的Drupal主题实现,它们也为Drupal 8做好了准备。这些作为基本主题都可以很好地工作,但也可以快速搭建一个网站并使它看起来不错。

付费主题也可以尝试。 通常,它们非常便宜且设置Swift。 它们的问题在于它们的价值正好与您为它们支付的价格一样多,并且在灵活性方面通常存在很大的漏洞。 作为一个初学者,这些主题似乎是建立站点的一种不错的方式,而且可能很好。 但是,随着您的进步,您将学会避免使用它们,而是根据外部设计甚至纯HTML / CSS / JS模板构建自己的模型。

结论

Drupal是用于构建任何类型的网站和平台的强大工具。 在每一个新的主要版本中,Drupal都表现出致力于改善自身,变得更加健壮和灵活,并包含外部社区的承诺。

翻译自: https://code.tutsplus.com/tutorials/what-is-drupal--cms-24498

 类似资料: