---
title: "DocHeaderComponent"
manual: "TYPO3 Explained"
version: "13.4"
permalink: "https://docs.typo3.org/permalink/t3coreapi:docheadercomponent@13.4"
source: "ApiOverview/Backend/BackendModules/DocHeaderComponent.rst"
rendered: "2026-09-26T10:27:18+00:00"
---

# DocHeaderComponent {#docheadercomponent}

The `\TYPO3\CMS\Backend\Template\Components\DocHeaderComponent` can be
used to display a standardized header section in a backend module with buttons,
menus etc. It can also be used to hide the header section in case it is
not desired to display it.

![](../../../Images/ManualScreenshots/Backend/DocHeaderComponent.png)

You can get the `DocHeaderComponent` with
[\\TYPO3\\CMS\\Backend\\Template\\ModuleTemplate::getDocHeaderComponent](https://docs.typo3.org/permalink/t3coreapi:typo3-cms-backend-template-moduletemplate-getdocheadercomponent@13.4)
from your module template.

**Table of contents**

-   [DocHeaderComponent API](https://docs.typo3.org/permalink/t3coreapi:docheadercomponent-api@13.4)
-   [Example: Build a module header with buttons and a menu](https://docs.typo3.org/permalink/t3coreapi:example-build-a-module-header-with-buttons-and-a-menu@13.4)

## DocHeaderComponent API {#docheadercomponent-api}

It has the following methods:

-   **class DocHeaderComponent**

    -   *Fully qualified name:* `\TYPO3\CMS\Backend\Template\Components\DocHeaderComponent`

    DocHeader component class

    -   **setMetaInformation(array $metaInformation)**

        Set page information

        -   *param $metaInformation:* Record array

    -   **setMetaInformationForResource(\\TYPO3\\CMS\\Core\\Resource\\ResourceInterface $resource)**

        -   *param $resource:* the resource

    -   **getMenuRegistry()**

        Get moduleMenuRegistry

        *Returns:* `MenuRegistry`

    -   **getButtonBar()**

        Get ButtonBar

        *Returns:* `ButtonBar`

    -   **isEnabled()**

        Determines whether this components is enabled.

        *Returns:* `bool`

    -   **enable()**

        Sets the enabled property to TRUE.

    -   **disable()**

        Sets the enabled property to FALSE (disabled).

    -   **docHeaderContent()**

        Returns the abstract content of the docHeader as an array

        *Returns:* `array`

## Example: Build a module header with buttons and a menu {#docheadercomponent-example}

The following example is extracted from the example Extbase extension
[`t3docs/blog-example`](https://packagist.org/packages/t3docs/blog-example). See the complete source code at
[t3doc/blog-example (GitHub)](https://github.com/TYPO3-Documentation/blog_example).

We use the DocHeaderComponent to register buttons and a menu to the module
header.

**Class T3docs\\BlogExample\\Controller\\BackendController**

```php
<?php

use Psr\Http\Message\ServerRequestInterface;
use TYPO3\CMS\Backend\Template\ModuleTemplate;

class BackendController extends ActionController
{
  private function modifyDocHeaderComponent(ModuleTemplate $view, string &$context): void
  {
    $menu = $this->buildMenu($view, $context);
    $view->getDocHeaderComponent()->getMenuRegistry()->addMenu($menu);

    $buttonBar = $view->getDocHeaderComponent()->getButtonBar();
    $this->addButtons($buttonBar);

    $metaInformation = $this->getMetaInformation();
    if (is_array($metaInformation)) {
      $view->getDocHeaderComponent()->setMetaInformation($metaInformation);
    }
  }

  protected function initializeModuleTemplate(
    ServerRequestInterface $request,
  ): ModuleTemplate {
    $view = $this->moduleTemplateFactory->create($request);

    $context = '';
    $this->modifyDocHeaderComponent($view, $context);
    $view->setFlashMessageQueue($this->getFlashMessageQueue());
    $view->setTitle(
      $this->getLanguageService()->sL('LLL:EXT:blog_example/Resources/Private/Language/Module/locallang_mod.xlf:mlang_tabs_tab'),
      $context,
    );

    return $view;
  }
}

```
