Konfiguration der Mehrsprachigkeit

Der Redakteur muss im Kopf- und Fuß-Daten-Template die einzelnen Sprach-Microsites konfigurieren. Eine automatische Berücksichtigung aller Mehrsprachigkeit-Microsites würde dem Redakteur die Möglichkeit nehmen die Microsite erst freizugeben wenn alle Inhalte eingepflegt wurden.

Kopf- und Fuß-Daten, Kopfbereich

Die einzelnen Links zu den Mehrsprachigkeit-Micorsites werden innerhalb des headerFooter Bereichs herausaggregiert.

Das Template um einen Sprachenbereich erweitern Pfad: template\sectionTypes\headerFooter.spml

<strong>Site in anderer Sprache</strong>
<spt:iterator name="sp_languageLinks" item="_jt" itemtext="Sprache">
	<sp:include module="sitekit-module" uri="/templates/sectionTypes/views/linkDefinition.spml">
		<sp:argument name="itemScope" object="_jt"/>
		<sp:argument name="translation">{
			"label": {
				"linkText": "Sprachbezeichnung",
				"linkTextRequired": "Sprachbezeichnung *"
			}
		}</sp:argument>
		<sp:argument name="options">{
			"linkTypes" : ["internal"],
			"linkText" : {
				"enabled" : true
			},
			"linkNewWindow" : {
				"enabled" : false
			}
		}</sp:argument>
	</sp:include>
</spt:iterator>

Aggregator erweitern. Pfad: aggregator\sectionTypes\headerFooter.spml

<sp:collection name="_languageLinks" action="new"/>
<sp:loop collection="_itemScope.sp_languageLinks" item="_it">
	<sp:include module="sitekit-module" uri="/aggregator/functions/getLink.spml" return="_languageLink">
		<sp:argument name="scope" object="_it"/>
	</sp:include>
	<sp:if name="_languageLink">
		<sp:collection name="_languageLinks" action="addNotEmpty" object="_languageLink"/>
	</sp:if>
</sp:loop>
<sp:map name="_content.model" action="putNotEmpty" key="languageLinks" object="_languageLinks"/>

Ausgabe

  1. Eine SP\SiteKit\Component\Container Komponente (LanguageLink) anlegen. Die Komponente hat die Aufgabe das Model der HeaderFooter-Komponente zu holen und einzelne SP\SiteKit\Component\Content\Link-Komponenten zu erstellen.

  2. Als globale-Komponente registrieren

'components' => [
	'customer_module-languageLinks' => ['type' => 'customer_module.languageLinks'],
]