8.2 创建区块

Drupal8的所有目录遵循PSR-4标准。

  • 在hello_world目录下创建目录 src\Plugin\Block

  • 在Block目录下创建ExampleBlock.php文件,内容如下:

<?php

namespace Drupal\hello_world\Plugin\Block;

use Drupal\Core\Block\BlockBase;

/**
 * Provides a 'Hello' Block
 *
 * @Block(
 *   id = "hello_block",
 *   admin_label = @Translation("Hello block"),
 * )
 */

class HelloBlock extends BlockBase {

  /**
   * {@inheritdoc}
   */
  public function build() {
    return array(
      '#markup' => $this->t('Hello, World!'),
    );
  }
}

上面的代码中包含了@Block注解

  • id: 区块ID
  • admin_label: 经过翻译的管理标签

{@inheritdoc}注释告诉系统使用父类的注解。

这里我们事先了一个非常重要的方法-build,它返回一个可渲染的数组。

访问 admin/stucture/block,在任意区域内点击"放置区块"按钮,在弹出的对话框内就可以看到这个新区块。

这样一个简单的可重复使用的区块就完成了。

本书共79小节。


评论 (0)