Versions Compared

Key

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

...

  • stkRedirect模板使用它自己的:
    • modelClassRedirectTemplateModel用于扩展STKPageModel并提供3个交替的重定向模式,这三个模式取决于编辑者设置的path值:
      • 如果在对话里输入了内部路径或外部URL,用户将会直接被重定向过去,绘制被跳过,以避免写入响应。如果在对话框里输入了内部路径或外部URL,用户将会直接被重定向过去,绘制被跳过,以避免写入响应。
      • 如果没有输入路径,那么页面重定向至找到的第一个子页面。这对于直接显示一个在重定向树的二级或三级定义的页面是很有用的。
      • templateScriptredirectMain.ftl在页面上正确地绘制路径。您可以在STK > Templates /templating-kit/pages/functional/redirectMain.ftl里查看脚本。

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

         pages

         

        stkRedirect

         

        areas

         

        Paragraph

        bodyID

        redirect

        Paragraph

        category

        functional

        Paragraph

        class

        info.magnolia.module.templatingkit.templates.pages.STKPage

        Paragraph

        dialog

        standard-templating-kit:functional/stkRedirect

        Paragraph

        i18nBasename

        info.magnolia.module.templatingkit.messages

        Paragraph

        modelClass

        info.magnolia.module.templatingkit.templates.RedirectTemplateModel

        Paragraph

        renderType

        stk

        Paragraph

        subcategory

        redirect

        Paragraph

        templateScript

        /templating-kit/pages/functional/redirectMain.ftl

        Paragraph

        title

        templates.stkRedirect.title

        Paragraph

        visible

        true

...

  • bodyID:这是专为模板的样式准备的CSS表所用的标签。参考Body类和ID以获得更多信息。bodyIDsubcategory值常常会一致,但它们彼此之间没有相通的关系。
  • categorysubcategory:每个模板都会被分配一个类别,大多数也会被分配一个子类。类别被用在很多场合,参考下面的类别和子类
  • dialog:每个页面模板会连接到它自己的stk<Template name>Properties对话,这个对话在对话框,这个对话框在STK > Dialog Definitions /pages里配置。每个页面顶部工具栏里的Properties按钮可以打开此对话,用来控制浏览器标题和导航标题及行为,页面管理数据(关键字和描述),变异排除和页面依赖性。详细信息参看属性对话按钮可以打开此对话框,用来控制浏览器标题和导航标题及行为,页面管理数据(关键字和描述),变异排除和页面依赖性。详细信息参看属性对话框
  • title:在Pages应用的Template域里显示的模板标题。

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

     pages

     

    stkImageGallery

     

    areas

     

    Paragraph

    bodyID

    image-gallery

    Paragraph

    category

    feature

    Paragraph

    class

    info.magnolia.module.templatingkit.templates.pages.STKPage

    Paragraph

    dialog

    standard-templating-kit:pages/imageGallery/stkImageGalleryProperties

    Paragraph

    i18nBasename

    info.magnolia.module.templatingkit.messages

    Paragraph

    modelClass

    info.magnolia.module.templatingkit.templates.pages.STKPageModel

    Paragraph

    renderType

    stk

    Paragraph

    subcategory

    imageGallery

    Paragraph

    title

    templates.stkImageGallery.title

    Paragraph

    visible

    true

...

区域定义很强大,您在定义里可以找到很多模板独特的配置。本小节概述了区域定义通常是如何使用的。为了演示方便,我们提供一些添加功能和特性的样例,来演示具体模板与模板原型的不同。STK区域里有对每个区域更深层的讨论。这些样例展示了系统的灵活性,但并不详尽。您可以把它们综合起来创造出更多的可能。

...

引用对话框

区域定义可以引用对话。该选项用在所有具体模板(除了区域定义可以引用对话框。该选项用在所有具体模板(除了stkHome)的main/intro区域,来引用模板专用的属性对话属性对话框。参考intro区域以获得更多信息。

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

stkSection

 

areas

 

main

 

areas

 

intro

 

Paragraph

class

info.magnolia.module.templatingkit.templates.MainAreaIntro

Paragraph

dialog

standard-templating-kit:pages/section/stkSectionIntro

Paragraph

divID

page-intro

Paragraph

showAuthorDate

false

Paragraph

showTextFeatures

false

...

您可以这样来测试,以样例编辑者Eric(username/password=eric)的身份登录,并尝试添加stkHTML组件到任何文章页面的content区域。stkHTML组件在选择器对话里不可用。组件在选择器对话框里不可用。

(warning) 4.5.9 + 引入了两个有关组件可用性的新特性。它们以与原型模板里相同的方式在模板级别上配置。您也可以:

...

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

components

 

content

 

teasers

 

extras

 

promos

 

stkPromo

 

features

 

links

 

stages

 

footer

 

pur

 

组件定义与页面定义相似,都使用同样的模板定义对象。页面和组件使用相同路径语法引用它们的对话。此外,页面和组件使用相同的绘制工具绘制。组件定义与页面定义相似,都使用同样的模板定义对象。页面和组件使用相同路径语法引用它们的对话框。此外,页面和组件使用相同的绘制工具绘制。

在很多时候,都不需要从头开始创建一个新组件,您可以拷贝或扩展现有的,并按您的需要调整。

通常创建新组件包括以下几步:

  1. 创建一个对话。创建一个对话框。
  2. 创建一个组件定义。
  3. 创建一个组件脚本。
  4. 使组件对组件脚本可用。

组件可用于编辑者通过STK > Dialog Definitions里配置的相关组件对话输入内容。对话定义通过对话属性映射到组件定义里。组件对话框输入内容。对话框定义通过对话框属性映射到组件定义里。

大多数组件在模板原型或具体页面模板定义的区域定义里被分配给页面模板。

...

  • description:指向组件描述的消息包关键字。
  • dialog:到对话定义的路径,有着:到对话框定义的路径,有着<module name>:<path to definition>结构。大多数STK对话都在结构。大多数STK对话框都在STK > Dialog Defintions下配置。
  • 118nBasename:国际化关键字,info.magnolia.module.templatingkit.messages,指向包含STK翻译的消息包。
  • renderType:值为stk时分配的STKRenderer是一个STK专用的绘制器,为所有的STK模板(页面和组件)所使用。
  • templateScript:指向绘制组件的脚本的路径。组件脚本在STK > Templates /templating-kit/components下。
  • title:在组件工具栏里绘制的组件标题。
  • deletable决定组件是否能被删除。如果设置为false,那么Delete component动作在动作栏里不可用。(warning) 4.5.9+
  • moveable决定组件是否能被移动。如果设置为false,那么移动图标在组件工具栏里不绘制,并且Move component动作在动作栏里不可用。(warning) 4.5.9+
  • writable决定组件是否能被编辑。如果设置为false,那么编辑图标在组件工具栏里不绘制,并且Edit component动作在动作栏里不可用。(warning) 4.5.9+

...

stkExtrasContact组件扩展要点组件,只修改divIDPrefixdialog引用部分。stkExtrasContact对话也是对话框也是stkTeaserContact对话的一个扩展,添加了对话框的一个扩展,添加了Show in Subpage域,允许子页面继承。您可以在STK > Dialog Definitions /components/teasers/stkTeaserContact/extras/stkExtrasContact里查看引用的对话。更多信息可参考里查看引用的对话框。更多信息可参考可继承组件

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

components

 

extras

 

stkExtrasContact

 

parameters

 

Paragraph

divIDPrefix

box

Paragraph

dialog

standard-templating-kit:components/extras/stkExtrasContact

Paragraph

extends

/modules/standard-templating-kit/templates/components/teasers/stkTeaserContact

...

当一个基于stkSiteMap模板的页面被创建时,组件被使用区域定义(见下表)中配置的缺省值绘制。编辑者可以在STK > Dialog Definitions /components/features/stkSiteMap下配置的stkSiteMap组件对话里修改这些缺省值。查看组件对话框里修改这些缺省值。查看demo-project/service/site-map页了解它是如何工作的。

...

这里是stkSiteMap组件和demo-project/service/site-map页面上的对话。页面上的对话框。

在上面的对话里,在上面的对话框里,maxLevels属性被设置为4。这是因为模板定义里的缺省值3在此页上已经被覆写了。新值4被存在JCR中,您可以在Tools > JCR /demo-project/service/site-map/content/singleton中验证。

...