Manchmal hab ich folgendes Problemchen: ich möchte z.B. falls Bedingung X eintrifft einen öffnenden Tag ausgeben und bei Bedingung Y einen schließenden Tag. PhpStorm fängt dann an, die Tags zu korrigieren, damit das Template aus seiner Sicht eine gültige Struktur hat. Ich habe bei meinem TYPO3-Kollegen Thomas Deuling einen einfachen Trick gesehen, wie man PhpStorm austricksen kann. Man schreibt die Tags einfach in !
Hier ein Beispiel für ein Media/Gallery Partial:
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:ce="http://typo3.org/ns/TYPO3/CMS/FluidStyledContent/ViewHelpers" data-namespace-typo3-fluid="true"> <f:if condition="{gallery.rows}"> <f:for each="{gallery.rows}" as="row"> <f:if condition="{gallery.rows -> f:count()} > 1"> <f:format.raw value="<div class='row'>"/> </f:if> <f:for each="{row.columns}" as="column"> <f:if condition="{row.columns -> f:count()} > 1"> <f:format.raw value="<div class='col'>"/> </f:if> <f:if condition="{column.media}"> <f:render partial="Media/Type" arguments="{file: column.media, dimensions: column.dimensions, data: data, settings: settings}"/> </f:if> <f:if condition="{row.columns -> f:count()} > 1"> <f:format.raw value="</div>"/> </f:if> </f:for> <f:if condition="{gallery.rows -> f:count()} > 1"> <f:format.raw value="</div>"/> </f:if> </f:for> </f:if> </html>
Es hat den kleinen Nachteil, dass man selbst den Code etwas schlechter lesen kann, aber wenigstens stimmt die Struktur und PhpStorm versucht nicht die Tags zu korrigieren.