Breaking: The content type academicprograms_programfinder is taken
Description
This extension now registers the content element Course Finder
itself, as the content type academicprograms_ with the Extbase
plugin Program of the extension Academic, and the FlexForm
field settings. for its target page. See
What the finder renders.
Those are the names projects used when they registered a finder of their own in the plugin namespace of this extension.
Impact
A project that registers academicprograms_ itself, usually in an
extension loaded after this one, collides with this registration. What the
editor and the visitor get depends on how the project registered it:
- A type item added with
ExtensionorManagement Utility:: add Plugin () Extensionreplaces the one of this extension. One added withUtility:: register Plugin () add, or written into the items array directly, is added a second time, and the type select offers the element twice.Tca Select Item () - A FlexForm data structure the project assigns replaces the one of this extension, so the backend shows the fields of the project finder and not Filter types and Preselected categories.
- A
configurecall forPlugin () Programthat names theFinder Programof this extension replaces the actions of the finder, and its list of uncached actions with them: the project action keeps rendering the element, cached unless the project lists it as uncached.Controller - One that names a controller of its own only adds it: the controller of this
extension stays the default, and the finder of this extension renders the
element with its own options. A template of the project is used only when
it is the
Program/of the last bullet.Finder. html - A subclass or an XCLASS of
Programno longer loads at all, because the controller is final in 3.0, see Breaking: The program controllers are final. A class the project registers in its place as a service alias, and that declares aController finderof its own, now renders the finder instead of the action of this extension.Action () - A template
Program/of the project in the template root path ofFinder. html plugin.is now rendered by the action of this extension, with its variables.tx_ academicprograms
Stored finder records keep their content type and their settings., and
render with the finder of this extension once the project registration is gone.
Affected Installations
Installations that register the content type academicprograms_,
configure the plugin Program of the extension Academic, or
declare a
finder in a class that extends or replaces
Program, in a site package or project extension.
Installations with a finder under a content type of their own are not affected; they can migrate to this element, see below.
Migration
Remove from the project:
- the type item of
academicprograms_in the TCA ofprogramfinder tt_(content Extension,Management Utility:: add Plugin () addor a direct write), and theTca Select Item () pi_data structure assigned to it;flexform - the
Extensioncall forUtility:: configure Plugin () Program;Finder - the FlexForm file of the finder;
- the controller code of the finder - a
finderin a class that extends or replacesAction () Program, or a branch on the content type in an overriddenController Program/;List. html - the page TSconfig that enables the type and adds its wizard entry.
Then enable the finder set fgtclb/, or depend
on the aggregate set fgtclb/.
A hard-coded preselected category becomes the field
Preselected categories. A project template
Program/ already is an override of the template of this
extension: adapt it to the variables
{filter,
{categories}
,
{preselection}
,
{list and
{data}
, or delete it.
The upgrade check
academic: of EXT:academic_base
reports an XCLASS of the controller as an error. It does not report a project
registration of the content type.
A finder under a content type of its own migrates by changing the content type
of its records to academicprograms_ and storing its target page
as settings. in
pi_.