質問
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>
これを試してみると、トップを開いたページのプロパティを試してもバックエンドは空のままです。セクションを削除するとすぐにすべてがうまくいきます。また、セクション内のフィールドの周囲に felexform.object を配置しようとしました
<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>
これも運が悪かったです。
マーカス
解決
現在 TYPO3 6.2 (現在のマスター ブランチ、これを書いている時点ではまだリリースされていません) をプレビューしている場合は、次のバグが発生している可能性があります。 http://forge.typo3.org/issues/56405
TYPO3 6.1 を使用している場合、この機能は動作するはずであり、上記のリンクのバグの影響を受けることはありません。この応答の残りの部分では、6.1 を使用しているか、問題のバグがローカル リポジトリで何らかの方法で修正されている (たとえば、その URL にリンクされているマージ リクエストを確認するなどして) と仮定します。
バックエンドを復元するためにどの「セクション」を削除するかが少しわかりません。 f:section
名前付き Configuration
削除すると、次の原因が発生します fluidpages
テンプレートを無視します。もしそれが flux:flexform.section
機能させるために削除していますが、失敗する理由はいくつか考えられます。
- 内部でファイル参照を使用する
Objects
Flux 形式で (注意:のObject
が必須であるため、Flux 内にフィールドを直接配置することはできませんSection
) FAL を備えたシステムに悪影響を与える可能性があります。FAL で使用される TCA は簡単に操作されてフレックスフォーム フィールドと互換性がなくなります (Flux フィールドは依然として TYPO3 にとってフレックスフォーム フィールドのように見えます)。これによりエラーが発生する可能性があります。 - 使用する
Section
そしてObject
でfluidpages
テンプレートには 1 つの制限があります。現在、TYPO3 でデフォルト値が処理されている方法のため、保存したオブジェクトをサブページに継承することはできません。Flux の将来のバージョンでは何らかの方法でこの問題が解決される可能性がありますが、現時点では回避する必要がある制限です。
最初に考えられる問題のいずれかが発生した場合は、エラーが報告され、次のいずれかに配置されます。 devlog
(を参照してください。 devlog
拡張子)、あなたの syslog
(TYPO3 インストール ツールで構成されたとおり) または PHP エラー ログ (Web サーバーまたは PHP 設定で構成されたとおり)。これらのログを検査する方法がわからない場合は、Flux の拡張機能設定 (Extension Manager 内) で「デバッグ モード」を有効にすることで、同じメッセージを読み取ることができる場合があります。この値を「2」に設定すると、一般的なフィードバック メッセージではなく、エラーのみが表示されるようになります。エラー メッセージは問題の解決に役立つ可能性があります。または、この質問に追加していただいても構いません。編集の際に考慮させていただきます。
最後に、これを期待している場合は、 Section
そして Object
サブページに継承するには、ブロッカーに直面することになります。これは現時点では単純に不可能です。の Object
定義されているのと同じページで使用できるはずですが、サブページではアクセスできません (少なくとも、Flux のデータ取得 ViewHelper やマニュアル ページ UID 解決を使用するなどの回避策がなければ)。
この方法でブロックされた場合は、代わりに次のことをお勧めします。
- sysfolder を作成するか、一般的なストレージ sysfolder を再利用します。
- コンテンツ要素をこの sysfolder に挿入し、そのコンテンツ要素を FCE にします。
Object
あなたは望んでいます。 - ページ テンプレートの構成フィールドを使用して、このコンテンツ要素を参照します (たとえば、
relation
に入力しますtt_content
または参照ウィザードの入力フィールド)。 - ページ テンプレートの出力で、この特定のコンテンツ要素を UID によって手動でレンダリングします。
v:content.render
そして議論contentElementUids="{0: myFieldName}"
どこmyFieldName
ページ設定フィールドの名前です。UID リストは配列であることに注意してください。
代替:
- 特別なページのコンテンツ列を追加する
- この列のレンダリングを設定するには
slide
上の設定v:content.render
- たとえば、次の値の場合-3
トップページの特別コンテンツ列をサブページの最初の 3 レベルにスライドさせます。
これが Markus のお役に立てば幸いです。そうでない場合は、希望する実装に関するより正確な情報を自由に追加してください。
他のヒント
セクションには、フィールドを含むオブジェクトが含まれている必要があります。
<flux:flexform.section name="images" label="images">
<flux:flexform.object name="foo2" label="foo2">
.