Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

大多数区域在原型里是使能的,因此需要在特定的模板定义里禁用,改变默认设置。您可以将/areas/<area name>内容节点下的enabled属性节点值设置为false来做到。另一方面,类似stageplatform的区域由于很少使用,所以在原型里是不使能的。这种情况就需要设置的区域由于很少使用,所以在原型里是不使能的,这种情况就需要设置enabled属性值为true来改变。

使能或禁用区域:使能或禁用区域,将会:

  • 决定整个区域绘制或不绘制,无论区域包含诸如组件的内容,自动生成的内容,还是脚本绘制的内容。内容会保留在内容库中,并且当一个之前被禁用的区域被重新使能后,将会再次绘制。您可以通过在决定整个区域是否绘制,无论区域包含的是组件,自动生成的内容,还是脚本绘制的内容。内容会保留在内容库中,并且在一个被禁用的区域重新使能后,将会再绘制。您可以在stkArticle模板上禁用extras,并在工具 >  > JCR里查看任何文章页来验证。里查看任意文章页来验证。

    Section
    Column
    width33%

    模板定义

    Advanced Tables - Table Plus
    heading0
    multiplefalse
    enableHeadingAttributesfalse
    enableSortingfalse
    classm5-configuration-tree
    enableHighlightingfalse
    节点名

    stkArticle

     

    areas

     

    extras

     

    Paragraph

    enabled

    false

    Paragraph

    bodyID

    article
    Column
    width33%

    JCR浏览器(网站)

    Advanced Tables - Table Plus
    heading0
    multiplefalse
    enableHeadingAttributesfalse
    enableSortingfalse
    classm5-configuration-tree
    enableHighlightingfalse
    节点名

    demo-project

     

    about

     

    subsection-articles

     

    article

     

    extras

     

    extras1

     

    0

     

    00

     
  • 将会对模板扩展与对基本模板有同样的效果。例如,如果您在对扩展模板与基本模板有着同样的作用。例如,如果您在stkArticle上禁用extras,这样将会在所有内容模板上都禁用该区域。添加,所有内容模板上都会禁用该区域;要在您的扩展模板上使能该区域,需要在扩展模板上添加enabled属性并在您想要包含该区域的模板扩展上将其设置为属性并设置为true,就可以修改了。
  • 可能影响页面布局。以下是一些样例,样例中的结果主要是由于页面排列和内容包装的方法造成的。可能会影响页面布局。以下的结果主要是由于页面排列和内容包装的方法造成的。这里是一些样例:
    • extras被禁用时,main区域会展开,以使用可用空间。区域会展开占用所有的可用空间。

    • promos被禁用时,可用空间里什么都不会绘制。被禁用时,原本它占用的可用空间里什么都不会绘制。

    • basestage,或是或是sectionHeader被禁用时,内容会上移绘制,就像被禁用的区域不存在一样。同样的行为也发生在区域被使能但不包含任何内容的预览模式里。下面的截图为禁用了被禁用时,内容会上移显示,就像被禁用的区域不曾存在一样。区域在使能但不包含任何内容时,预览模式里也会发生同样的情况。下面的截图为禁用了stagestkHome模板。
    • 当浮显(floating)在main区域里被使能,并列数设置为main区域里使能浮显(floating),并且将columns设置为2时,main区域里的第二列只会在extras被禁用时绘制。下面的截图展示了基于/demo-features/stkSectionFloating模板的demo-features/section-variations/floating页面。

添加区域

在模板定义里,您可以添加模板原型里没定义的区域。在模板定义里,您可以添加模板原型里没有的区域。以下的例子里,stkSection模板的main区域会创建一个新的嵌套区域,区域会创建一个新的嵌套区域,即opener区域。

以下对原型配置的修改与新的新的opener区域有关:r区域通过下列对原型配置的修改实现:

  • /areas/main节点:
    • 使用它自己的类,SectionMainArea,用来定义,来定义opener区域属性。
    • /section/mainArea.ftl脚本绘制,该脚本与缺省的脚本绘制。该脚本与默认使用的/global/mainArea.ftl脚本除了使用脚本唯一的不同在于,它使用[@cms.area name="opener"/]标签添加了opener区域外完全相同。区域。
  • /areas/main/areas/opener节点:
    • 配置新配置opener区域。
    • 是一个只能绘制一个组件的single区域。
    • enabledoptional的,意味着它虽然可用,但编辑者可能会选择删除它。
    • /section/opener.ftl这个标准的single区域脚本绘制。
    • 使stkTeaserOpener组件在availableComponents节点里可用。availableComponents节点里设置stkTeaserOpener组件可用。

      Advanced Tables - Table Plus
      heading0
      multiplefalse
      enableHeadingAttributesfalse
      enableSortingfalse
      classm5-configuration-tree
      enableHighlightingfalse
      节点名

      stkSection

       

      areas

       

      main

       

      floating

       

      areas

       

      intro

       

      opener

       

      availableComponents

       

      stkTeaserOpener

       

      Paragraph

      id

      standard-templating-kit:components/teasers/stkTeaserOpener

      Paragraph

      description

      areas.templates.main.opener.description

      Paragraph

      enabled

       true

      Paragraph

      optional

      true

      Paragraph

      templateScript 

       /templating-kit/pages/section/opener.ftl

      Paragraph

      title

      areas.templates.main.opener.title

      Paragraph

      type

      single

      content

       

      Paragraph

      class

      info.magnolia.module.templatingkit.templates.SectionMainArea

      Paragraph

      templateScript

      /templating-kit/pages/section/mainArea.ftl

使能浮显

浮显就意味着该区域内的组件在指定数目的列里绘制。缺省情况下,浮显在浮显(floating)是指该区域内的组件在指定数目的列里绘制。默认情况下,浮显在stkHomestkSectionFloating模板的main区域内是使能的。demo-project主页和的主页和demo-features/section-variations/floating页面就是建立在这些模板之上的。这里就是页面就使用了这两个模板。下图显示了demo-project主页的main区域。

浮显是在模板定义的<template name>/areas/main 内容节点里配置的。在STK > 模板定义 /pages/stkHomestkHome模板下:模板里:

  • /areas/main:
    • 使用SectionMainArea类定义浮显属性。
    • section/MainArea.ftl脚本绘制,简单的绘制所有嵌套区域。
  • areas/main/floating里:
    • enabled节点被设置为节点设置为true来使能浮显。您可以将此属性设置为false来禁用。
    • 列数设置为columns设置为3,告诉Magnolia CMS在三列中绘制组件。可用的选项有CMS在三列中绘制组件。此属性可用的选项有12,和3。由于其他嵌套区域都被禁用,只有在/areas/main/areas/content/availableComponents节点下可用的组件会在main区域里绘制。
  • areas/main/areas/content
    • 使一些要点组件在/availableComponents节点里可用。这些组件被配置在一个浮显区域内工作(参看下表)。节点里可用。这些组件被配置在一个浮显区域内工作(见下表)。
    • section/contentArea.ftl脚本绘制。该脚本包含绘制teaserCount的代码(参看下表)。的代码(见下表)。
  • /areas/main/areas/intro/opener/breadcrumb被禁用了,意味着在此模板上,浮显只出现在/areas/main/areas/content里。禁用其他嵌套区域不是严格必须的。里。您并不一定需要禁用其他嵌套区域。
  • /areas/extras被禁用,以确保此页解析到一个allowedBodyClass里(参看下表)。extras被禁用,以确保此页解析到一个allowedBodyClass里(见下表)。

    Advanced Tables - Table Plus
    heading0
    multiplefalse
    enableHeadingAttributesfalse
    enableSortingfalse
    classm5-configuration-tree
    enableHighlightingfalse
    节点名

    stkHome

     

    areas

     

    main

     

    floating

     

    Paragraph

    columns

    3

    Paragraph

    enabled

    true

    areas

     

    content

     

    availableComponents

     

    Paragraph

    templateScript

    /templating-kit/pages/section/contentArea.ftl

    Paragraph

    title

    templates.stkHome.areas.main.content.title

    intro

     

    Paragraph

    class

    info.magnolia.module.templatingkit.templates.MainAreaIntro

    Paragraph

    enabled

    false

    opener

     

    breadcrumb

     

    Paragraph

    class

     info.magnolia.module.templatingkit.templates.SectionMainArea

    Paragraph

    templateScript

    /templating-kit/pages/section/mainArea.ftl

    extras

     

    inheritance

     

    Paragraph

    class 

    info.magnolia.module.templatingkit.templates.ExtrasArea

    Paragraph

    enabled

    false

缺省情况下,您可以扩展默认情况下,您可以扩展stkHomestkSection模板来配置一个浮显模板,因为它们都使用模板来配置一个浮显模板,这是因为它们都使用SectionMainArea类和要点组件。其它的场景需要定制。类和要点组件。其它的场景则需要定制。STK > 模板定义 /pages/demo-features/stkSectionFloating里的stkSectionFloating模板就是扩展stkSection模板的一个例子:模板的一个例子,它:

  • 此模板在stkSectionFloating/extends节点下扩展stkSection模板。通过扩展:
    • 合适的要点组件在需要的要点组件在/areas/main/content/availableComponents节点下可用。
    • 使用SectionMainArea类。类得到使用。
  • /areas/main/floating节点,floating被使能且列数设置为被使能且columns设置为2
  • /areas/main/areas节点,introopener区域被禁用。
  • /areas/extras节点,extras区域被禁用。

    Advanced Tables - Table Plus
    heading0
    multiplefalse
    enableHeadingAttributesfalse
    enableSortingfalse
    classm5-configuration-tree
    enableHighlightingfalse
    节点名
    pages 

    demo-features

     

    stkSectionFloating

     

    areas

     

    main

     

    floating

     

    Paragraph

    columns

    2

    Paragraph

    enabled

    true

    areas

     

    intro

     

    Paragraph

    enabled

    false

    opener

     

    Paragraph

    enabled

    false

    extras

     

    inheritance

     

    Paragraph

    class

    info.magnolia.module.templatingkit.templates.ExtrasArea

    Paragraph

    enabled

    false

    base

     

    Paragraph

    extends

    /modules/standard-templating-kit/templates/pages/stkSection

    Paragraph

    title

    Section Floating

这就是基于这是基于stkSectionFloating模板的公共实例上的模板的demo-features/section-variables/floating页。该页解析到页在公共实例上的样子。该页解析到body元素里包含的一个属性(attribute)元素里包含的一个属性(attribute),即allowedBodyClass=nav-col-float2里。main区域的每个要点都被包在一个DIV元素内。区域的每个要点都包装在一个DIV元素内。

为确保浮显被使能后组件能够正确绘制,需要考虑以下几点因素:为确保浮显使能后组件能够正确绘制,需要考虑以下几点因素:

  • BodyClassResolver Java类自动解析此页的bodyClass。区域应在需要时被使能或禁用,以确保页面解析到一个allowedBodyClass。参看。更多信息参看body类以获得更多信息。
  • CSS表单引用此bodyClass以保证正确的样式。
  • 当浮显列数被配置后,配置了浮显列数以后,teaserCount会告诉Magnolia CMS哪里可以绘制每个要点。参看告诉Magnolia CMS哪里可以绘制每个要点。更多信息参看Teaser IDs以获得更多信息。
    • 每个要点定义的配置都有一个divId和一个divIdPrefix属性来辅助属性,以辅助teaserCount
    • 单个组件脚本里的FreeMarker代码分配一个要点ID和单个组件脚本里的FreeMarker代码分配一个要点ID,然后由section/contentArea.ftl脚本来在此区域里绘制脚本在此区域里绘制teaserCount

变异形式

变异形式用于某些特定用途,例如重新设计智能手机和平板这样的设备的内容格式,或已登录用户组的特定输出等。参看移动里关于演示站点里用到的智能手机变异形式样例的详细讨论,以及通知里关于此核心功能的更多信息。

...