Question

J'essaie d'ajouter une section dans mon extension fluidpage.

<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>

Si j'essaye ceci, le backend reste vide si j'essaie les propriétés de la page la plus ouverte.Dès que je supprime la section, tout va bien.J'ai également essayé de mettre un felexform.object autour des champs à l'intérieur de la section

<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>

pas de chance non plus.

Marc

Était-ce utile?

La solution

Si vous prévisualisez actuellement TYPO3 6.2 (branche principale actuelle, encore inédite au moment de la rédaction de ces lignes), vous pourriez très bien rencontrer ce bug : http://forge.typo3.org/issues/56405

Si vous utilisez TYPO3 6.1, cette fonctionnalité devrait fonctionner et vous ne devriez pas être affecté par le bug du lien ci-dessus.Je supposerai dans le reste de cette réponse que vous utilisez la version 6.1 ou que le bug en question est corrigé d'une manière ou d'une autre dans votre référentiel local, par exemple en examinant la demande de fusion liée à cette URL.

Vous ne savez pas vraiment quelle "section" vous supprimez pour restaurer le backend - si c'est la f:section nommé Configuration vous supprimez, cela entraînera fluidpages pour ignorer le modèle.Si c'est le flux:flexform.section vous supprimez pour le faire fonctionner, il peut y avoir plusieurs raisons à son échec :

  • Utiliser des références de fichiers à l'intérieur Objects sous forme de Flux (NB :le Object est obligatoire, vous ne pouvez pas placer de champs directement dans un Flux Section) peut avoir des effets néfastes sur les systèmes atteints de FAL.Le TCA utilisé par FAL est facilement manipulé pour être incompatible avec les champs Flexform (les champs Flux apparaissent toujours comme des champs Flexform dans TYPO3), ce qui peut provoquer des erreurs.
  • En utilisant Section et Object dans un fluidpages le modèle a une limitation :les objets que vous stockez ne peuvent pas être hérités des sous-pages en raison de la manière dont les valeurs par défaut sont actuellement gérées par TYPO3.Il est possible que les futures versions de Flux résolvent ce problème d'une manière ou d'une autre, mais il s'agit actuellement d'une limitation que vous devez contourner.

Si vous êtes concerné par l'un des premiers problèmes possibles, des erreurs auront été signalées et placées soit dans votre devlog (voir le devlog extension), dans votre syslog (tel que configuré dans l'outil d'installation TYPO3) ou dans votre journal d'erreurs PHP (tel que configuré par votre serveur Web ou les paramètres PHP).Si vous ne savez pas comment inspecter ces journaux, vous pourrez peut-être lire le même message en activant le « mode débogage » dans la configuration de l'extension de Flux (dans Extension Manager).Définir cette valeur sur « 2 » devrait garantir que vous ne verrez que les erreurs, et non les messages de commentaires généraux.Le message d'erreur peut vous aider à résoudre le problème - ou vous pouvez l'ajouter à cette question et je le prendrai en considération lors d'une modification.

Enfin, si vous vous attendez à ça Section et Object pour être hérité des sous-pages, vous serez confronté à un bloqueur - ce n'est tout simplement pas possible actuellement.Le Object doit être utilisable sur la même page sur laquelle il est défini, mais n'est pas accessible sur les sous-pages (du moins pas sans solutions de contournement, par exemple en utilisant les données de Flux pour obtenir ViewHelper et la résolution manuelle de l'UID de la page).

Si vous êtes ainsi bloqué, je vous propose plutôt :

  • Créez un dossier système ou réutilisez votre dossier système de stockage général
  • Insérez un élément de contenu dans ce dossier système et faites de cet élément de contenu un FCE contenant le Object tu désires.
  • A l'aide des champs de configuration de votre modèle de page, référencez cet élément de contenu (par exemple un relation tapez pour tt_content ou un champ de saisie avec un assistant de navigation).
  • Dans la sortie de votre modèle de page, restituez manuellement cet élément de contenu spécifique par UID en utilisant v:content.render et argumentation contentElementUids="{0: myFieldName}"myFieldName est le nom du champ de configuration de votre page.Notez que la liste UID est un tableau !

Alternative:

  • Ajouter une colonne de contenu de page spéciale
  • Configurez le rendu de cette colonne avec slide mis en marche v:content.render - par exemple avec une valeur de -3 pour faire glisser la colonne de contenu spécial de la page supérieure vers les trois premiers niveaux de sous-pages.

J'espère que cela aidera Markus - sinon, n'hésitez pas à ajouter des informations plus précises sur la mise en œuvre souhaitée.

Autres conseils

La section doit contenir un objet contenant les champs:

<flux:flexform.section name="images" label="images">
    <flux:flexform.object name="foo2" label="foo2">

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top