CQ5: Inheritance / Advanced Dialogs

For reference, I'm on CQ5.5

I am curious if there is a way to extend the inherited dialog without overwriting its parent dialog.

For example, they have the following structure:

base-page-template
   - dialog
      - title
      - description

inerited-from-base-page
   - dialog
      - custom field
      --------------- [inherited from parent]
      - title
      - description

What I'm trying to avoid, for example: I need to add a new property to the base page that should appear on all page templates that extend from the base page. My current solution is to add this property to all dialogs separately. So, for example, in the above structure, I would need to add a new property “by default” both in the dialog box “base page” and in the dialog box “inherited from the base page”.

, , node, " ", xtype: cqinclude node.

, , - , .

, ,

+4
2

, . , , path.

, , path, :

<items jcr:primaryType="cq:WidgetCollection">
        <tabs jcr:primaryType="cq:TabPanel">
            <items jcr:primaryType="cq:WidgetCollection">
                <tab1
                        jcr:primaryType="cq:Widget"
                        path="/apps/myproject/tab1.infinity.json"
                        xtype="cqinclude"/>
                <tab2
                        jcr:primaryType="cq:Widget"
                        path="/apps/myproject/tab2.infinity.json"
                        xtype="cqinclude"/>

            </items>
        </tabs>
</items>    

tab1 tab2 .

, :

base_page_dialog_tab
      - dialog
      - title
      - description

inherited page-dialog-tab
      - custom field


base-page-template
    - include base page dialog tab here.   

inerited-from-base-page
    - include Tab 1 - inherited page-dialog tab using path property 
    - include Tab 2 - base page dialog tab using path property.
+9

Rajesh w.r.t dialog.xml, AEM.

UI cqinclude - sling: resourceType = "granite/ui/components/foundation/include". :

<basic
     jcr:primaryType="nt:unstructured"
     sling:resourceType="granite/ui/components/foundation/include"
     path="foundation/components/page/cq:dialog/content/items/tabs/items/basic"/>

AEM, , sling: resourceSuperType, , , , . sling.

, , , , TOUCH-UI.

.

base_page_dialog_tab (sling:resourceType='A')
      - dialog
      - title
      - description

page-dialog-tab (sling:resourceSuperType=sling:resourceSuperType='A')
      - custom field

page-dialog-tab .

- dialog
- title
- description
- custom field

, sling: hideProperties, sling: hideResource, sling: hideChildren sling: orderBefore, .

+1

All Articles