LinkButton extends AbstractButton

This button type renders a regular anchor tag with TYPO3s way to render a button control.

Example:

public function __construct(
    protected readonly ComponentFactory $componentFactory,
) }

public function myAction(): ResponseInterface
{
    $buttonBar = $this->moduleTemplate->getDocHeaderComponent()->getButtonBar();
    $saveButton = $this->componentFactory->createLinkButton()
         ->setHref('#')
         ->setDataAttributes([
             'foo' => 'bar'
         ])
         ->setIcon($this->iconFactory->getIcon('actions-document-save', IconSize::SMALL))
         ->setTitle('Save');
    $buttonBar->addButton($saveButton, ButtonBar::BUTTON_POSITION_LEFT, 1);
}

Table of Contents

Properties

$attributes  : array<string|int, mixed>
Attributes for the button
$classes  : string
CSS classes to apply to the rendered element
$dataAttributes  : array<string, string>
HTML data-* attributes for the control
$disabled  : bool
Whether the button is in disabled state
$href  : string
$icon  : Icon|null
Optional icon to display on the button
$role  : string
$showLabelText  : bool
Whether to show the button's label text (from title property).
$size  : ButtonSize
$title  : string
Title/label text for the control

Methods

__toString()  : string
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
getAttributes()  : array<string, string>
getClasses()  : string
getDataAttributes()  : array<string|int, mixed>
getHref()  : string
getIcon()  : Icon|null
getRole()  : string
getShowLabelText()  : bool
getSize()  : ButtonSize
getTitle()  : string
getType()  : string
Returns the fully qualified class name as the component type identifier.
isDisabled()  : bool
isValid()  : bool
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
render()  : string
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
setAttributes()  : static
setClasses()  : static
setDataAttributes()  : static
setDisabled()  : static
setHref()  : static
setIcon()  : static
setRole()  : static
setShowLabelText()  : static
setSize()  : static
setTitle()  : static

Properties

$attributes

Attributes for the button

protected array<string|int, mixed> $attributes = []

$classes

CSS classes to apply to the rendered element

protected string $classes = ''

$dataAttributes

HTML data-* attributes for the control

protected array<string, string> $dataAttributes = []

Key-value pairs (e.g., ['action' => 'save'])

$disabled

Whether the button is in disabled state

protected bool $disabled = false

$icon

Optional icon to display on the button

protected Icon|null $icon = null

$showLabelText

Whether to show the button's label text (from title property).

protected bool $showLabelText = false

If false, only the icon is shown (label is used for title attribute).

$size

protected ButtonSize $size = \TYPO3\CMS\Backend\Template\Components\Buttons\ButtonSize::SMALL

$title

Title/label text for the control

protected string $title = ''

Methods

__toString()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public __toString() : string
Return values
string

getAttributes()

public getAttributes() : array<string, string>
Return values
array<string, string>

getClasses()

public getClasses() : string
Return values
string

getDataAttributes()

public getDataAttributes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHref()

public getHref() : string
Return values
string

getRole()

public getRole() : string
Return values
string

getShowLabelText()

public getShowLabelText() : bool
Return values
bool

getTitle()

public getTitle() : string
Return values
string

getType()

Returns the fully qualified class name as the component type identifier.

public getType() : string

This is used to identify the specific component type in validation and rendering.

Return values
string

The fully qualified class name (e.g., 'TYPO3\CMS\Backend\Template\Components\Buttons\LinkButton')

isDisabled()

public isDisabled() : bool
Return values
bool

isValid()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public isValid() : bool
Return values
bool

True if the component is valid and can be rendered, false otherwise

render()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public render() : string
Return values
string

setAttributes()

public setAttributes(array<string, string> $attributes) : static
Parameters
$attributes : array<string, string>
Return values
static

setClasses()

public setClasses(string $classes) : static
Parameters
$classes : string
Return values
static

setDataAttributes()

public setDataAttributes(array<string|int, mixed> $dataAttributes) : static
Parameters
$dataAttributes : array<string|int, mixed>
Return values
static

setDisabled()

public setDisabled(bool $disabled) : static
Parameters
$disabled : bool
Return values
static

setHref()

public setHref(string $href) : static
Parameters
$href : string
Return values
static

setIcon()

public setIcon(Icon|null $icon) : static
Parameters
$icon : Icon|null
Return values
static

setRole()

public setRole(string $role) : static
Parameters
$role : string
Return values
static

setShowLabelText()

public setShowLabelText(bool $showLabelText) : static
Parameters
$showLabelText : bool
Return values
static

setTitle()

public setTitle(string $title) : static
Parameters
$title : string
Return values
static

        
On this page

Search results