Important: The page template name of the academic partner page type is set explicitly
Description
This extension registers a page type with a backend layout and ships the page
template for it in Resources/. Its TypoScript adds that
directory to
page., but it did not set
page. — the property that actually selects the
file.
A site package deriving the name from the backend layout therefore did not find it. bk2k/bootstrap-package does exactly that:
templateName.cObject = TEXT
templateName.cObject {
data = pagelayout
case = uppercamelcase
split {
token = pagets__
cObjNum = 1
1.current = 1
}
}
case = uppercamelcase
is
General, which lowercases the whole
string before it camel cases it on underscores. The registered backend layout
pagets__ therefore resolved to Academicpartner., and
the frontend ended in an
Invalid — in a
production context a page whose body reads Oops, an error occurred!.
The extension now sets the name itself, inside the page type condition it already uses:
[page && traverse(page, "doktype") == 40]
page.10 {
templateName >
templateName = AcademicPartner
}
[END]
The clear is not decoration. Bootstrap package assigns
template, and a cObject overwrites the plain value in
Content, so assigning without clearing
would change nothing.
Impact
A page of this type renders its template on a site package that derives the name from the backend layout, where it previously did not render at all.
Nothing changes for a site package that sets the name itself, as long as it does
so after this extension's TypoScript, and nothing changes for a
PAGEVIEW
page object — that content object ignores
template and resolves the file from
paths
, which
is why that integration worked before and is unaffected now.
Affected Installations
All installations of this extension that use a
FLUIDTEMPLATE
page
object. An installation that shipped Academicpartner. in its own site
package to work around this loses that override: the template of this extension
is used instead. Clearing
page. after this
extension's TypoScript restores it.