1

我已经设置了一个站点以使用通量 / FLUIDCONTENT 作为模板,并使用此处的教程使其工作:http: //thomas.deuling.org/2011/06/create-base-html-fluid-templates-for-typo3-4 -5/

一切正常,但现在我希望能够为每页选择一个图像并使用它来构建一个大标题。使用 templavoila,我可以创建页面属性中可用的字段,但似乎无法使其与 FLUIDCONTENT 一起使用。

我正在使用 Typo3 6.1,这是我的内页 flex 模板:

{namespace v=Tx_Vhs_ViewHelpers}
{namespace flux=Tx_Flux_ViewHelpers}
<f:layout name="main" />

<f:section name="content">
                    <f:format.raw>{content_header}</f:format.raw>
    <div id="content">
        <div class="container">
           <div class="row">
                <div class="col-md-3">
                    <f:format.raw>{content_left}</f:format.raw>
                </div>
                <div class="col-md-9">
                    <f:format.raw>{content}</f:format.raw>
                </div>
            </div>
        </div>
    </div>
</f:section>

如何将表单字段添加到页面属性并在我的模板中使用它们?

4

1 回答 1

6

恐怕,你把事情搞混了。

flux,fluidcontent和(对你来说尤其重要)fluidpages一起扩展为 TYPO3创建fluid模板的默认功能。

  • Flux是解析和重构 TYPO3 表单域的基础技术。
  • 流体内容利用通量来允许灵活的内容元素
  • Fluidpages利用 Flux 允许在纯流体中使用自定义字段进行页面布局

总结一下:您已经阅读了有关基本fluid页面模板的教程,但不是fluidpages模板。为了让您快速入门,有一些示例和文档资源可用:

  • 文档存储库的快速入门
  • 引导程序包中的专业提供程序扩展(请谨慎使用 - 这是一个示例,而不是您的下一个项目模板)
  • 扩展fluidcontent_bootstrapfluidpages_bootstrap

当您通过这些资源时,您知道如何注册提供程序扩展,以便您可以在后端的页面属性中选择它。

您的模板可能看起来像这样(它实际上取自上述专业扩展):

 <!-- Note that the namespace declaration depends on which version of flux you are actually using -->
{namespace v=Tx_Vhs_ViewHelpers}
{namespace flux=FluidTYPO3\Flux\ViewHelpers}
<f:layout name="Page"/>
<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
     xmlns:v="http://fedext.net/ns/vhs/ViewHelpers"
     xmlns:flux="http://fedext.net/ns/flux/ViewHelpers"
     xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">

    <f:section name="Configuration">

        <flux:form id="1column" label="1 column layout">

            <!-- Options visible in page property -->
            <flux:field.input name="settings.carousel.categories" eval="trim" default="4" />
            <flux:field.input name="settings.carousel.width" eval="trim" default="1200"/>
            <flux:field.input name="settings.carousel.height" eval="trim" default="340"/>
            <flux:field.checkbox name="settings.carousel.caption" default="1"/>

            <!-- Grid displayed in the page module -->
            <flux:grid>
                <flux:grid.row>
                    <flux:grid.column colPos="0" label="Main Content"/>
                </flux:grid.row>
            </flux:grid>
        </flux:form>
    </f:section>

    <f:section name="Content">
        <div class="row" role="main">
            <div class="col-md-12" role="section">
                <v:page.content.render column="0"/>
                <f:if condition="{v:var.typoscript(path: 'lib.addthis.display')}">
                    <f:render section="AddThis" partial="AddThis" optional="TRUE" arguments="{_all}"/>
                </f:if>
            </div>
        </div>
    </f:section>

</div>

大多数通量模板(无论是流体页面还是流体内容)都分为(至少)3 个f:section流体部分:

  • 配置采用您的表单字段
  • 预览会影响您的模板在后端的预览方式
  • 通常ContentMain(您可以在布局文件中影响命名,但应遵守我们在示例扩展中传播的约定)呈现您的 FCE/页面模板

这些field项目可以通过name作为 getter 的属性访问它们来使用。为了说明这一点,您可以{settings.carousel.caption}从上面的页面模板内部访问。

于 2014-03-24T21:38:55.373 回答