- EBT Blocks 🧱
- EPT Paragraphs 🆕
-
Resources & Support
- What's New
- 事件
- 联络表
额外区块类型 (EBT) - 全新的布局构建器体验❗
滚动
添加主控制器
04/10/2025, by Ivan
Menu
- 理解 Drupal
- Drupal 系统要求
- 安装 Drupal 8
- 更新 Drupal 8
- Drupal 8 网站管理
- Drupal 8 模块
- Drupal 模块比较
- Drupal 主题
- Drupal 字段类型
- 配置管理
- Drupal 多站点
- 无障碍功能
- Drupal 8 समस्या निवारण
-
为 Drupal 创建模块
- 入门指南 - 参考信息(Drupal 8)
- 准备模块框架
- Drupal 8 模块的命名与放置规则
- 通过 .info.yml 文件让 Drupal 8 知道你的模块
- 添加 composer.json 文件
- 通过 Drupal 模块在页面上输出 “Hello World”
- 添加主控制器
- 添加路由文件
- 添加菜单链接
- 继续前进
- 添加默认配置
- 在你的 Drupal 8 模块中启用默认配置
- Drupal 8 基础模块构建实用指南
- Drupal 模块的基本结构
- 配置表单 Drupal
- 在 Drupal 8 中定义和使用你自己的配置
- 在 Drupal 模块中以编程方式创建页面
- 在 Drupal 模块中以编程方式创建区块
- 在 Drupal 中创建字段类型、小部件和格式化器
- 事件订阅器 (Event Subscriber) 与 事件调度器 (Event Dispatcher)。Drupal 的事件系统。
- 为 Drupal 创建 Views 显示样式
- 在 Drupal 模块中添加主题化模板
- 在 Drupal 8 模块中添加样式表 (CSS) 和 JavaScript (JS)
- 测试 Drupal 8 模块
- 在 drupal.org 上发布你的模块
- 理解钩子
- Drupal 8 API
- Drupal 8 主题化
- 升级到 Drupal 8
HelloController 类中的 content() 方法将在路由系统调用页面时返回标记文本。
在你的模块目录中,应当有一个符合 PSR-4 标准的文件夹结构 /src/Controller,在该文件夹中你需要创建控制器文件 HelloController.php。
因此,你的控制器文件路径应为
/src/Controller/HelloController.php
在 HelloController.php 文件中,你将拥有如下代码:
<?php namespace Drupal\hello_world\Controller; use Drupal\Core\Controller\ControllerBase; /** * 定义 HelloController 类。 */ class HelloController extends ControllerBase { /** * 显示标记。 * * @return array * 返回标记数组。 */ public function content() { return [ '#type' => 'markup', '#markup' => $this->t('Hello, World!'), ]; } }
这段代码本身不会执行任何操作。它必须通过在模块中添加路由文件来调用。然而,首先将控制器添加到代码中是 D8 的整体理念的一部分:“先创建工具,然后将其连接起来”。