Mysql
 sql >> база данни >  >> RDS >> Mysql

Typo3 V6:Как да създадете контейнер за елемент на съдържание? (без телевизор)

Аз съм автор на пакета за разширения Fluid (flux, fluidcontent, fluidpages и т.н.) и, разбира се, бих искал да ви помогна да научите как да използвате FluidContent за създаване на FCE. Наистина не е толкова напреднало, колкото може да се страхува. Най-малкото, той е много по-компактен от примера по-горе. Следното постига същия резултат като вашия пример в FluidContent:

TypoScript (статично зареден: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)
}

Относно (1) наистина, наистина трябва. Използването на разширение разделя качените от вас медии и др. от съдържанието на вашия сайт. Ако направите това вместо това, просто използвайте път EXT:... до папката Частни ресурси. И по отношение на (2) тези пътища са необходими само ако наистина искате да използвате частични.

След това самият файл на шаблона (открива се автоматично, когато пътят, където се намира файлът е добавен в 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>

Както можете да видите, вие сте напълно свободни да добавяте всеки HTML, който желаете, да използвате всякакви ViewHelpers (дори да изобразявате TS обекти, ако това е вашето нещо). За да добавите допълнителни елементи на съдържанието, просто добавете нови шаблонни файлове - те ще бъдат разпознати автоматично.

Но той ще работи по различен начин от IRRE (което можете също постигнете с помощта на Flux полета - уведомете ме, ако искате да видите демонстрация на това):ще ви позволи да използвате естественото drag-n-drop в TYPO3, за да поставите елементите на вашето дете съдържание в реални контейнери за съдържание - както правехте преди с телевизор.

Като такова, Fluid Content е вероятно най-близкото до телевизията.

По отношение на това, че Flux е излишен, бих искал да ви дам представа какво всъщност изпълнява:

  • Кеширано четене на TS, за да се знаят пътищата
  • Кеширани списъци с открити шаблони
  • Fluid кешира към собствен PHP, Flux използва само Fluid за съхраняване на конфигурация (което означава, че е естествен PHP докрай)
  • Самият Flux регистрира кука абонат, който реагира на записаното съдържание, това забавя бекенда (незабележимо)
  • Сами по себе си Flux не създава натоварване на FE с едно изключение:когато е в некеширани плъгини (FluidContent е кеширан!) Flux може да извика собствения PHP кеширан код за четене на конфигурации.
  • FluidContent се състои от изключително прост контролер; изходът е напълно кеширан.
  • Може да искате да добавите колекцията VHS ViewHelper – тя сама по себе си създава абсолютно нулево натоварване:използва ресурси само там, където използвате неговите ViewHelper. Съдържа куп ViewHelpers, сигурен съм, че ще ви бъде полезен.

Отначало може да изглежда поразително, но ви гарантирам, че има по-малко неща, които трябва да знаете и запомните, отколкото в pibase, FlexForm XML, TS или родни плъгини Extbase. Ако искате още повече от защитна мрежа, силно препоръчвам да използвате XSD схеми във вашия редактор - това ви осигурява автоматично довършване на специалния <flux:....> етикети и други.

Въпреки това:това ще изисква от вас да научите малко за логиката на Fluid:какво представляват Layouts и Partials (най-вероятно ще искате да ги използвате в даден момент) и как да използвате специалните тагове и да се позовавате на променливи (които ще се изискват в други случаи на употреба - но не и този, който е под ръка; изисква само прости маркери на ViewHelper).

Надявам се това да помогне. И че намалих страха ви, че Flux е излишен и твърде много за научаване;)

Наздраве,
Клаус, известен още като. Безименен код



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:ПОРЪЧАЙ ПО с празна дата '0000-00-00' като последна, но останалите ASC

  2. MySql - ПРИ ВМЕСВАНЕ НА ДУБЛИРАН КЛЮЧ

  3. 10 причини да се придържате към MySQL

  4. Код на грешка в MySQL:1411. Неправилна стойност за дата и час:'' за функция str_to_date

  5. Търсене на емоджи в MySQL