---
title: "Breaking: #82414 - CMS ViewHelper base classes removed"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-82414"
source: "Changelog/9.0/Breaking-82414-RemoveCMSBaseViewHelperClasses.rst"
typo3-version: "9.0"
typo3-major: 9
type: "breaking"
issue: 82414
forge: "https://forge.typo3.org/issues/82414"
tags: ["Fluid", "NotScanned"]
rendered: "2026-09-17T12:41:04+00:00"
---

# Breaking: #82414 - CMS ViewHelper base classes removed {#breaking-82414-cms-viewhelper-base-classes-removed}

See [forge#82414](https://forge.typo3.org/issues/82414)

## Description {#description}

The following ViewHelper base classes have been removed:

-   `\TYPO3\CMS\Fluid\Core\ViewHelper\AbstractConditionViewHelper`
-   `\TYPO3\CMS\Fluid\Core\ViewHelper\AbstractTagBasedViewHelper`
-   `\TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper`
-   `\TYPO3\CMS\Fluid\Core\ViewHelper\ArgumentDefinition`

Aliases are in place, but the following key differences may break your code:

-   Render method arguments are no longer possible at all
-   The property `$this->controllerContext` is no longer defined

## Impact {#impact}

Render method arguments have been deprecated for a long time and should already have been migrated
in your code. If you still have ViewHelpers using render method arguments, these will break
after this change.

## Affected Installations {#affected-installations}

All instances which use a ViewHelper that either contains render method arguments, extends from one
of the base classes above, or or accesses `$this->controllerContext`.

## Migration {#migration}

Migrate to use `renderStatic` methods (see examples in TYPO3 Core, EXT:fluid) to not use
render method arguments.

ViewHelpers which access `$this->controllerContext` can instead access
`$this->renderingContext->getControllerContext()`.

Instead of using the (now removed) abstract classes from ext:fluid, use the classes
supplied in `vendor/typo3fluid/fluid`:

-   `\TYPO3Fluid\Fluid\Core\ViewHelper\AbstractConditionViewHelper`
-   `\TYPO3Fluid\Fluid\Core\ViewHelper\AbstractTagBasedViewHelper`
-   `\TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper`
-   `\TYPO3Fluid\Fluid\Core\ViewHelper\ArgumentDefinition`

and change your code accordingly.

Migrating this can be done with search-and-replace for all common use cases.
