Breaking: Partner pages render inside the site layout
Description
The page template of the page type Academic partner,
Resources/, declared no Fluid layout.
On a site package that renders its header, navigation and footer through a page
layout, as
bk2k/bootstrap-package
does, a partner page therefore
rendered without any of them. The template rendered every part inline, so a
project that wanted to change one of them had to replace the whole template.
And its paths were registered at the key 100 of the page object, which on a
PAGEVIEW
site package replaced the package's own paths of that key
on partner pages - its layouts and partials were gone there.
From 3.0 on:
- The template renders the section
Mainof the layout named by the new settingplugin.,tx_ academicpartners. page. layout Defaultby default. A site package without a layoutDefaultgets a fallback layout of this extension, which renders the section alone. - The section renders five partials:
Partner/,Page/ Header. html Partner/,Page/ Media. html Partner/,Page/ Categories. html Partner/andPage/ Address. html Partner/.Page/ Content. html - The header renders the subtitle of the page. The title is wrapped in an
element with the class
academic-, and the subtitle is an element with the classpartners- detail__ header academic-below it.partners- detail__ subtitle paths,templateandRoot Paths partialof the page object use the keyRoot Paths 50instead of100on partner pages.layout, which named a directory that does not exist, is removed.Root Paths. 100
The setting is a site setting of the aggregate set fgtclb/
and a constant for the static templates, see The layout of a partner page. The
program page made the same move in 3.0, so the three academic page types
follow one pattern.
Impact
- A partner page on a site package with a layout
Defaultrenders inside it: with the header, navigation and footer of the site. - A site package whose layout
Defaultrenders no sectionMainrenders the partner page without its content. - A site package without a layout
Defaultrenders the partner page as before, without the frame of the site. A layout named by the setting that the site package does not have fails the page. - A partner page with a subtitle shows it below the title. The title is
wrapped in an element with the class
academic-whether or not a subtitle is set.partners- detail__ header - A
PAGEVIEWsite package that assigns a variabledataof its own no longer breaks partner pages. The page record now comes from{page}first, in the template and in the data processor. - A path a project registered at a key between
50and100now wins over the extension, where it lost before. A site package path at100is no longer replaced on partner pages. - A project that set, read or cleared
page.,10. paths. 100 template,Root Paths. 100 partialorRoot Paths. 100 layoutinside the condition on the partner page type reaches nothing of this extension there any more.Root Paths. 100
Affected Installations
Every installation that renders partner pages on a site package with page
layouts, and every installation that styles the markup of the partner page or
changes its paths at the key 100.
An override of the whole Academic keeps rendering, without a
layout, as long as it does not render
styles.,
see Breaking: Partner pages render their content without a global path.
Migration
- A site package whose layout for partner pages has another name sets
plugin.to it. One whose layout renders another section thantx_ academicpartners. page. layout MainoverridesPages/.Academic Partner. html - A project that overrides
Academicto change one part moves that change to the matching partial belowPartner. html Partner/and removes the template override.Page/ - A project that added a subtitle of its own renders the page field
Subtitle instead, or overrides
Partner/.Page/ Header. html - Move a path set at the key
100inside the partner page condition to50, or to a key above it to win over the extension. - Adjust stylesheets that relied on the title being a direct child of the flex container.