Saya penulis suite ekstensi Fluid (flux, fluidcontent, fluidpages, dll.) dan tentu saja ingin membantu Anda mempelajari tentang penggunaan FluidContent untuk membuat FCE. Ini benar-benar tidak secanggih yang mungkin ditakuti. Paling tidak, ini jauh lebih kompak daripada contoh di atas. Berikut ini mencapai hasil yang sama seperti contoh Anda, di FluidContent:
TypoScript (dimuat statis:css_styled_content, fluid_content)
plugin.tx_fed.fce.yourname {
templateRootPath = fileadmin/Templates # if you don't want to use an extension (1)
# partial and layout root paths not defined (2)
}
Mengenai (1) Anda benar-benar harus. Menggunakan ekstensi memisahkan media yang diunggah pengguna, dll. dari konten situs Anda. Jika Anda melakukannya, cukup gunakan jalur EXT:... ke folder Sumber daya pribadi. Dan mengenai (2) jalur ini hanya diperlukan jika Anda benar-benar ingin menggunakan sebagian.
Kemudian, file template itu sendiri (terdeteksi secara otomatis ketika jalur tempat file berada ditambahkan di TS):
{namespace flux=Tx_Flux_ViewHelpers}
<f:layout name="Content" />
<f:section name="Configuration">
<flux:flexform id="columns" label="Columns" icon="path/to/iconfile.jpg">
<flux:flexform.grid>
<flux:flexform.grid.row>
<flux:flexform.grid.column>
<flux:flexform.content name="left" label="Left content" />
</flux:flexform.grid.column>
<flux:flexform.grid.column>
<flux:flexform.content name="right" label="Right content" />
</flux:flexform.grid.column>
</flux:flexform.grid.row>
</flux:flexform.grid>
</flux:flexform>
</f:section>
<f:section name="Preview">
<flux:widget.grid />
</f:section>
<f:section name="Main">
<div class="row">
<div class="span6">
<flux:flexform.renderContent area="left" />
</div>
<div class="span6">
<flux:flexform.renderContent area="right" />
</div>
</div>
</f:section>
Seperti yang Anda lihat, Anda sepenuhnya bebas untuk menambahkan HTML apa pun yang Anda inginkan, gunakan ViewHelpers apa pun (bahkan render objek TS jika itu yang Anda inginkan). Untuk menambahkan elemen konten tambahan, cukup tambahkan file template baru - file tersebut akan dikenali secara otomatis.
Tetapi ini akan bekerja secara berbeda dari IRRE (yang dapat Anda juga mencapai menggunakan bidang Flux - beri tahu saya jika Anda ingin melihat demonya):ini akan memungkinkan Anda untuk menggunakan drag-n-drop asli di TYPO3 untuk menempatkan elemen konten anak Anda ke dalam wadah konten yang sebenarnya - seperti yang biasa Anda lakukan dengan TV.
Oleh karena itu, Konten Cairan mungkin adalah yang paling dekat dengan TV.
Mengenai Flux yang berlebihan, saya ingin memberi Anda gambaran tentang kinerja sebenarnya:
- Pembacaan TS dalam cache untuk mengetahui jalur
- Daftar cache dari template yang terdeteksi
- Fluid cache ke PHP asli, Flux hanya menggunakan Fluid untuk menyimpan konfigurasi (yang berarti PHP asli sepenuhnya)
- Flux sendiri mendaftarkan pelanggan kait yang bereaksi terhadap konten yang disimpan, ini memperlambat backend (tanpa terasa)
- Flux sendiri tidak membuat beban pada FE dengan satu pengecualian:ketika dalam plugin yang tidak di-cache (FluidContent di-cache!) Flux dapat memanggil kode cache PHP asli untuk membaca konfigurasi.
- FluidContent terdiri dari pengontrol yang sangat sederhana; output sepenuhnya di-cache.
- Anda mungkin ingin menambahkan koleksi VHS ViewHelper - koleksi itu sendiri benar-benar tidak ada beban:hanya menggunakan sumber daya di mana Anda menggunakan ViewHelper-nya. Ini berisi banyak ViewHelper yang saya yakin akan berguna bagi Anda.
Ini mungkin terlihat luar biasa pada awalnya, tetapi saya jamin Anda hanya perlu mengetahui dan mengingat lebih sedikit daripada di pibase, FlexForm XML, TS atau plugin Extbase asli. Jika Anda menginginkan lebih banyak jaring pengaman, saya sangat menyarankan menggunakan skema XSD di editor Anda - ini memberi Anda pelengkapan otomatis <flux:....>
khusus tag dan lainnya.
Namun:itu akan mengharuskan Anda untuk belajar sedikit tentang logika Fluid:apa itu Tata Letak dan Parsial (kemungkinan besar Anda ingin menggunakannya di beberapa titik) dan bagaimana menggunakan tag khusus dan merujuk ke variabel (yang akan diperlukan dalam kasus penggunaan lain - tetapi bukan yang ada; itu hanya membutuhkan tag ViewHelper sederhana).
Saya harap ini membantu. Dan bahwa saya telah mengurangi ketakutan Anda bahwa Flux berlebihan dan terlalu banyak untuk dipelajari;)
Semangat,
Claus alias. NamelessCoder