Important: The job list leaves the content element header to the layout 

Description 

A Bite Jobs List content element renders through the content element layout of the site, like any other content element. The layouts of EXT:fluid_styled_content and of the bootstrap package render the header and the subheader an editor enters, and the template of the plugin rendered them a second time:

<f:render partial="Header/All" arguments="{_all}" />
Copied!

With an explicit header layout the header and the subheader appeared twice. With the header layout Default the plugin left an empty <header></header> element behind, because the header partial takes the heading level for that layout from a setting the plugin settings did not carry.

The template now renders the header only when the site switches it on:

TypoScript constants
plugin.tx_academicbitejobs.renderContentElementHeader = 1
Copied!

It is off by default.

The plugin settings now also carry settings.defaultHeaderType , mapped from the constant styles.content.defaultHeaderType of EXT:fluid_styled_content, so with the switch on the header layout Default renders a heading. See The header of the content element.

Impact 

On a site whose content element layout renders the header, the header of the job list appears once, and the markup of the plugin no longer contains a <header> element. TYPO3 v12 and v13 behave alike here.

Affected Installations 

Every installation using the Bite Jobs List content element.

Installations whose content element layout renders no header, a site package that renders the header in its element templates instead, lose the header of the job list.

Migration 

On a site whose content element layout renders no header, switch plugin.tx_academicbitejobs.renderContentElementHeader on.

Projects that copied Templates/BiteJobs/List.html keep rendering the header in their copy. On a site whose layout renders the header, drop the <f:render partial="Header/All" … /> line from the copy. On any other site, keep it or wrap it in the same condition as the shipped template:

<f:if condition="{settings.renderContentElementHeader}">
    <f:render partial="Header/All" arguments="{_all}" />
</f:if>
Copied!