In tx_news können alle Plugin-Einstellungen auch über TypoScript eingestellt werden, indem ihre Namen zu overrideFlexformSettingsIfEmpty
hinzugefügt werden. Wie der Name schon sagt, werden diese TS-basierten Einstellungen nur verwendet, wenn die entsprechenden Flexform-Felder einer Plugin-Inkarnation leer bleiben. Das ist was ich will und was ich brauche. Es ermöglicht eine grundlegende TS-Konfiguration, die in jedem Plugin-Element überschrieben werden kann.useStdWrap steht in Konflikt mit overrideFlexformSettingsIfEmpty in tx_news
Hier ist das Problem:
Da meine TS Standardwerte müssen komplexere Berechnungen, aktiviere ich auch useStdWrap
für einige der tx_news Einstellungen Felder aus. Aber ich habe festgestellt, dass IMMER ein aktiver stdWrap
verwendet wird - egal, ob es Flexform-Einstellungen gibt oder nicht. Wenn ich eine Flexform-Einstellung definiere, sollte sie immer die TS-Einstellungen überschreiben (unabhängig davon, wie komplex ihre Berechnung war und ob sie Standard-Wdk-Operationen beinhaltete). Ich brauche die Möglichkeit, TS stdWrap zur Berechnung von Standardwerten zu verwenden. Hier
ein Beispiel:
plugin.tx_news.settings {
overrideFlexformSettingsIfEmpty := addToList(categories)
useStdWrap := addToList(categories)
categories.data = GP:cat
categories.ifEmpty = 1
}
ich dieses TS erwarten würde die Kategorie einer Nachrichten-Plugin aus einem Abfrage-String-Parametern (cat) und fällt zurück in Kategorie 1, aber nur wenn es eingestellt sind keine Kategorien innerhalb des Plugins selbst gesetzt.
Aber die stdWrap
Operationen (.data und .ifEmpty) immer Kick-in und es gibt keine Möglichkeit, die Flexform-Einstellungen nicht mehr zu verwenden.
Gibt es eine Möglichkeit, dies zu lösen?
Hallo Georg, ich habe Ihre Antwort akzeptiert. Aber ich stimme Ihrer Einschätzung nicht zu, dass es keine Möglichkeit gibt, dies zu beheben. Ich habe meine eigene Lösung unten gepostet und alles, was es tut, könnte zu EXT News hinzugefügt werden. Sie müssen sicherstellen, dass für alle useStdWrapped-Felder ihre Einstellungen, die direkt in einem Plugin definiert sind, als Standardinhalt für das TS-Objekt festgelegt werden, das durch stdWrap verarbeitet wird. Dies steht nicht im Konflikt mit bestehenden Nachrichtenimplementierungen, da der Standardinhalt von useStdWrapped-Feldern derzeit ohnehin nicht verfügbar ist (wie in Problem [# 126] beschrieben (https://github.com/georgringer/news/issues/126)). – Jpsy