TYPO3 – DCE Frames entfernen

Wer von Euch in der TYPO3 8.6.x Version die Extension: DCE verwendet, wird bei allen Elementen einen Rahmen / Frame als Wrap erhalten, obwol Ihr in der Vorlage im Fluid: <f:layout name=“None“ /> stehen habt.
Der Frame kommt auch nicht von der Ext: DCE sondern von dem Fluid_Content_Styles, hier können wir nun eine kleine FLUID-IF-Abfrage in das Default.html Template einbauen:

Lagert dazu folgende Datei aus:
typo3_src-8.7.8/typo3/sysext/fluid_styled_content/Resources/Private/Layouts/Default.html

Und tragt nun folgenden Code dort ein:

<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
<f:spaceless>
	<f:if condition="{data.frame_class} != none">
		<f:then>
            <f:if condition="{data.tx_dce_dce}">
                <f:then>
                    <f:if condition="{data._LOCALIZED_UID}">
                        <a id="c{data._LOCALIZED_UID}"></a>
                    </f:if>
                    <f:render section="Before" optional="true">
                        <f:render partial="DropIn/Before/All" arguments="{_all}" />
                    </f:render>
                    <f:render section="Header" optional="true">
                        <f:render partial="Header/All" arguments="{_all}" />
                    </f:render>
                    <f:render section="Main" optional="true" />
                    <f:render section="Footer" optional="true">
                        <f:render partial="Footer/All" arguments="{_all}" />
                    </f:render>
                    <f:render section="After" optional="true">
                        <f:render partial="DropIn/After/All" arguments="{_all}" />
                    </f:render>
                </f:then>
                <f:else>
                    <div id="c{data.uid}" class="frame frame-{data.frame_class} frame-type-{data.CType} frame-layout-{data.layout}{f:if(condition: data.space_before_class, then: ' frame-space-before-{data.space_before_class}')}{f:if(condition: data.space_after_class, then: ' frame-space-after-{data.space_after_class}')}">
                        <f:if condition="{data._LOCALIZED_UID}">
                            <a id="c{data._LOCALIZED_UID}"></a>
                        </f:if>
                        <f:render section="Before" optional="true">
                            <f:render partial="DropIn/Before/All" arguments="{_all}" />
                        </f:render>
                        <f:render section="Header" optional="true">
                            <f:render partial="Header/All" arguments="{_all}" />
                        </f:render>
                        <f:render section="Main" optional="true" />
                        <f:render section="Footer" optional="true">
                            <f:render partial="Footer/All" arguments="{_all}" />
                        </f:render>
                        <f:render section="After" optional="true">
                            <f:render partial="DropIn/After/All" arguments="{_all}" />
                        </f:render>
                    </div>
                </f:else>
            </f:if>
		</f:then>
		<f:else>

			<a id="c{data.uid}"></a>
			<f:if condition="{data._LOCALIZED_UID}">
				<a id="c{data._LOCALIZED_UID}"></a>
			</f:if>
			<f:if condition="{data.space_before_class}">
				<div class="frame-space-before-{data.space_before_class}"></div>
			</f:if>
			<f:render section="Before" optional="true">
				<f:render partial="DropIn/Before/All" arguments="{_all}" />
			</f:render>
			<f:render section="Header" optional="true">
				<f:render partial="Header/All" arguments="{_all}" />
			</f:render>
			<f:render section="Main" optional="true" />
			<f:render section="Footer" optional="true">
				<f:render partial="Footer/All" arguments="{_all}" />
			</f:render>
			<f:render section="After" optional="true">
				<f:render partial="DropIn/After/All" arguments="{_all}" />
			</f:render>
			<f:if condition="{data.space_after_class}">
				<div class="frame-space-after-{data.space_after_class}"></div>
			</f:if>

		</f:else>
	</f:if>
</f:spaceless>
</html>

Damit haben wir nun eine if-Abfrage eingbunden, wenn es ein DCE Element gibt, dann nimm auch keinen div-Container.

Eure Meinung zu dem Artikel ist gefragt! Schreibt mir ein Kommentar

Hat Euch der Artikel weitergeholfen oder gefallen?
Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!

Hat Euch der Artikel weitergeholfen oder gefallen? Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!Ich bin freiberuflicher TYPO3-Entwickler, Web-Entwickler und Frontend-Entwickler. Ich arbeite im und für das Web etwas mehr als 12 Jahre. Mehr Infos zu der TYPO3 Internetagentur - INGENIUMDESIGN.

Leave a Reply