几年前,我决定想要一个地方来发布我的想法并尝试一些新兴的网络技术。
为什么选择 Drupal?
我以使用和推广 Drupal 为生。所以,肯定可以用一句谚语来形容这种情况:“当你的唯一工具是锤子时,每个问题看起来都像钉子。”
事实上,我曾考虑使用一些 静态站点解决方案,如 Gatsby 或 Jekyll,然后使用 GitHub 或 GitLab 提供的免费托管选项。
然而,我喜欢 Drupal 的一点是,我可以快速创建和调整内容结构,并且可以利用大量的社区提供的模块来扩展其功能,所有这些都可以免费使用。
让我用一个具体的例子来说明它的灵活性。最初,我希望我的网站是一个博客,并且有很多选择,包括纯 SaaS 产品,如 Medium。然而,当我在开发它时,我突然想到,我也可以将该网站用作跟踪我的各种公开演讲活动的场所。
关于 Drupal 的演讲
我维护着几个 Drupal 模块,并与社区分享。我也有幸与一些非常聪明的人一起工作,所以我经常有一些关于如何以简单而强大的方式将 Drupal 用于一些日常用例的想法。
当我向开源会议提交会议提案时,组织者通常希望看到我最近的公开演讲活动列表。我过去以各种方式跟踪这些信息,包括 Google 文档。然后我必须记住保持列表更新(通常,我不会这样做)。然后,如果某个特定的会议想要不同格式的信息,我必须自己调整所有内容:添加更长的描述、视频链接等等。
我在我的 Drupal 网站上添加了一个内容类型(用于结构化存储的可自定义模板),名为“Talk”。默认情况下,它有一个标题和描述,所以我添加了日程、地点和视频链接的字段。

(Martin Anderson-Clutz, CC BY-SA 4.0)
Drupal 具有强大的开箱即用的媒体处理功能,所以当我的某个演讲视频发布到网上时,我所要做的就是将 URL 复制并粘贴到我的网站上。我可以将其显示为链接或嵌入式视频播放器。为了获得更好的性能,我还添加了一个社区模块,允许网站延迟加载视频播放器。
我最近意识到我经常将我的演讲幻灯片发布到 SlideShare,所以我添加了一个字段来跟踪这些链接。这个更改花费不到一分钟的时间来实现。现在,如果有人想重新访问内容,他们可以在我的网站上找到一个页面,其中包含所有信息:发生时间、描述、视频和幻灯片。

(Martin Anderson-Clutz, CC BY-SA 4.0)
Drupal 还包括一个强大的可视化查询构建器,名为 Views,非常适合在点击界面中生成内容列表以满足特定需求。我使用 Views 创建了即将到来的和过去的演讲列表,包括过去演讲的小型视频播放器,以及访客点击进入详情时显示的全尺寸播放器。如果会议需要特定格式的我的演讲经验,我可以轻松创建一个新的 View,以他们需要的格式精确提供他们需要的信息,只需点击几下即可。
Drupal 的主要功能
使用 Drupal 创建网站的另一个好处是,您可以基于世界上最活跃的开源社区之一的工作进行构建。他们内置了一些令人印象深刻的功能,我的网站从中受益。
性能
他们构建 Drupal 以使用多层缓存以获得更好的性能。它还支持 BigPipe 渐进式渲染,允许即使是复杂的页面也能立即开始在浏览器中渲染。
可访问性
Drupal 社区在新颖的 Olivero 主题上投入了大量工作。它不仅外观漂亮,而且还为屏幕阅读器和其他辅助技术的轻松导航而构建。经过审查,美国全国盲人联合会热情洋溢地表示,该团队“做得非常出色”。对于我的网站,我研究出一种覆盖 Olivero 并进行一些小的样式更改的方法,而无需直接编辑主题。这使我的网站具有一些独特的风格,同时确保我可以随着 Drupal 的不断发展而无痛地更新它。
我最喜欢的 Drupal 模块
虽然 Drupal 开箱即用就非常灵活,但当您开始从社区提供的庞大模块库中添加模块时,可能性是无限的,所有这些都是免费的。以下是一些使我的网站更好的模块。
Smart Date
这提供了一个直观、易于使用的日期输入小部件,旨在与典型日历应用程序的 UX 对齐。它可以优雅地处理时区。它还允许日期范围的自然语言格式化:例如,输出“2 月 15 日星期二上午 9-10 点”,而不是“2 月 15 日星期二上午 9:00 - 2 月 15 日星期二上午 10:00”。
Blazy
默认情况下,Drupal 将 loading="lazy"
HTML 属性添加到 img
标签,但并非所有浏览器都支持此属性。此外,我的网站在主页上加载了多个视频播放器,这可能会导致性能下降。Blazy 模块增加了对多个延迟加载库的支持,并且可以延迟加载视频播放器。
Pathauto
长期以来,Drupal 可以根据内容片段的数字 ID 创建 SEO 友好的 URL,例如 /node/123
。Pathauto 扩展了自动生成的 URL 的复杂性,使其包含文本,例如内容类型、您对其进行的分类以及标题 (/articles/blog/composable-date-formatter-drupal
)。您也可以使用它来创建面包屑导航。
如果我想认真对待 SEO,我可以添加使用 Metatag 模块自动生成各种元标记,并添加元标记,以便内容在社交媒体上共享时看起来更好。如果我想 真正 认真对待 SEO,我还可以添加 Real-time SEO 模块,以帮助我积极地针对特定关键字进行优化。但是,我怀疑我会如此认真地对待它。
最后的想法
您是否有兴趣尝试 Drupal?在 Simplytest.me 或 DrupalPod 上有可用于测试 Drupal 的一键演示,其中包含云托管的 IDE(如果您想亲自动手)。在另一篇文章中,我将讨论一种低成本(基本上是免费的,一旦启动并运行)的方式来托管您的 Drupal 网站。
评论已关闭。