Frage

Ich versuche, meiner Fluidpage-Erweiterung einen Abschnitt hinzuzufügen.

<f:section name="Configuration">
    <flux:flexform id="default" label="Gallery Page" icon="{f:uri.resource(path: 'Icons/DefaultPage.png')}">
        <flux:flexform.section name="images">
            <flux:flexform.field.file name="ls" label="Landscape image" maxItems="1" minItems="1" required="1" showThumbnails="1" />
            <flux:flexform.field.select name="lsAlign" label="Alignment of the landscape image" items="left,right" />
            <flux:flexform.field.file name="pt" label="Portrait image" maxItems="1" minItems="1" required="1" showThumbnails="1" />
            <flux:flexform.field.select name="ptAlign" label="Alignment of the portrait image" items="left,right" />
        </flux:flexform.section>

        <flux:flexform.grid>
            <flux:flexform.grid.row>
                <flux:flexform.grid.column colPos="0" name="Main Content" />
            </flux:flexform.grid.row>

            <flux:flexform.grid.row>
                <flux:flexform.grid.column colPos="1" name="Gallery Images" />
            </flux:flexform.grid.row>
        </flux:flexform.grid>
    </flux:flexform>
</f:section>

Wenn ich das versuche, bleibt das Backend leer, wenn ich die Eigenschaften der oben geöffneten Seite ausprobiere.Sobald ich den Abschnitt entferne, ist alles in Ordnung.Außerdem wurde versucht, ein felexform.object um die Felder innerhalb des Abschnitts zu platzieren

<flux:flexform.section name="images" label="images">
            <flux:flexform.object name="imageObject" label="image object">
                <flux:flexform.field.file name="ls" label="Landscape image" maxItems="1" minItems="0" required="0"
                                          showThumbnails="1"/>
                <flux:flexform.field.select name="lsAlign" label="Alignment of the landscape image"
                                            items="left,right"/>
                <flux:flexform.field.file name="pt" label="Portrait image" maxItems="1" minItems="0" required="0"
                                          showThumbnails="1"/>
                <flux:flexform.field.select name="ptAlign" label="Alignment of the portrait image"
                                            items="left,right"/>
            </flux:flexform.object>
        </flux:flexform.section>

Das war auch kein Glück.

Markus

War es hilfreich?

Lösung

Wenn Sie derzeit eine Vorschau von TYPO3 6.2 (aktueller Master-Zweig, zum Zeitpunkt des Verfassens dieses Artikels) noch nicht veröffentlicht haben, kann es durchaus sein, dass bei Ihnen dieser Fehler auftritt: http://forge.typo3.org/issues/56405

Wenn Sie TYPO3 6.1 verwenden, sollte diese Funktion funktionieren und Sie sollten nicht von dem Fehler im obigen Link betroffen sein.Im weiteren Verlauf dieser Antwort gehe ich davon aus, dass Sie 6.1 verwenden oder dass der betreffende Fehler irgendwie in Ihrem lokalen Repository behoben wurde, beispielsweise durch Überprüfen der unter dieser URL verlinkten Zusammenführungsanforderung.

Sie sind sich ein wenig unsicher, welchen „Abschnitt“ Sie entfernen, um das Backend wiederherzustellen – falls dies der Fall ist f:section genannt Configuration Sie entfernen, wird dies dazu führen fluidpages um die Vorlage zu ignorieren.Wenn es das ist flux:flexform.section Sie entfernen, damit es funktioniert. Es kann mehrere Gründe dafür geben, dass es fehlschlägt:

  • Verwendung von Dateiverweisen im Inneren Objects in Flussmittelformen (Anmerkung:Die Object erforderlich ist, können Sie keine Felder direkt in einem Flux platzieren Section) kann negative Auswirkungen auf Systeme mit FAL haben.Der von FAL verwendete TCA kann leicht so manipuliert werden, dass er nicht mit Flexform-Feldern kompatibel ist (Flux-Felder erscheinen für TYPO3 immer noch wie Flexform-Felder), was zu Fehlern führen kann.
  • Benutzen Section Und Object in einem fluidpages Die Vorlage hat eine Einschränkung:Die von Ihnen gespeicherten Objekte können aufgrund der Art und Weise, wie Standardwerte derzeit von TYPO3 verarbeitet werden, nicht an Unterseiten vererbt werden.Es ist möglich, dass zukünftige Versionen von Flux dieses Problem auf irgendeine Weise lösen, aber derzeit gibt es eine Einschränkung, die Sie umgehen müssen.

Wenn Sie von einem der ersten möglichen Probleme betroffen sind, werden Fehler gemeldet und entweder in Ihrem Browser angezeigt devlog (siehe die devlog Erweiterung), in Ihrem syslog (wie im TYPO3-Installationstool konfiguriert) oder in Ihrem PHP-Fehlerprotokoll (wie durch Ihren Webserver oder Ihre PHP-Einstellungen konfiguriert).Wenn Sie nicht sicher sind, wie Sie diese Protokolle überprüfen sollen, können Sie möglicherweise dieselbe Meldung lesen, indem Sie den „Debug-Modus“ in der Erweiterungskonfiguration von Flux (im Extension Manager) aktivieren.Wenn Sie diesen Wert auf „2“ setzen, sollten Sie sicherstellen, dass nur Fehler und keine allgemeinen Feedbackmeldungen angezeigt werden.Die Fehlermeldung kann Ihnen bei der Lösung des Problems helfen – oder Sie können sie gerne zu dieser Frage hinzufügen und ich werde sie bei einer Bearbeitung berücksichtigen.

Schließlich, wenn Sie dies erwarten Section Und Object Um auf Unterseiten vererbt zu werden, werden Sie mit einem Blocker konfrontiert – das ist derzeit einfach nicht möglich.Der Object sollte auf derselben Seite verwendbar sein, auf der es definiert ist, auf Unterseiten kann jedoch nicht zugegriffen werden (zumindest nicht ohne Problemumgehungen, z. B. mithilfe von Fluxs Daten, die ViewHelper erhalten, und manueller Seiten-UID-Auflösung).

Wenn Sie auf diese Weise blockiert sind, schlage ich stattdessen Folgendes vor:

  • Erstellen Sie einen Systemordner oder verwenden Sie Ihren allgemeinen Speicher-Systemordner wieder
  • Fügen Sie ein Inhaltselement in diesen Systemordner ein und machen Sie dieses Inhaltselement zu einem FCE, das das enthält Object Sie wünschen.
  • Verweisen Sie mithilfe der Konfigurationsfelder Ihrer Seitenvorlage auf dieses Inhaltselement (z. B. a relation Geben Sie ein tt_content oder ein Eingabefeld mit einem Suchassistenten).
  • Rendern Sie in der Ausgabe Ihrer Seitenvorlage dieses spezifische Inhaltselement manuell mithilfe der UID v:content.render und Argumentation contentElementUids="{0: myFieldName}" Wo myFieldName ist der Name Ihres Seitenkonfigurationsfelds.Beachten Sie, dass die UID-Liste ein Array ist!

Alternative:

  • Fügen Sie eine spezielle Seiteninhaltsspalte hinzu
  • Konfigurieren Sie das Rendering dieser Spalte mit slide eingestellt auf v:content.render - zum Beispiel mit einem Wert von -3 um die spezielle Inhaltsspalte der obersten Seite auf die ersten drei Ebenen der Unterseiten zu verschieben.

Ich hoffe, das hilft Markus. Wenn nicht, können Sie gerne genauere Informationen zu Ihrer gewünschten Implementierung hinzufügen.

Andere Tipps

Der Abschnitt muss ein Objekt enthalten, das die Felder enthält:

generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top