Skip to main content
srikanthp689160
Level 4
Jan 24, 2019 1:25 PM UTC
Solved

Unable to see Allowed Components list in custom layout container

Hi Team,

We are trying to create custom Layout Container(wcm/foundation/components/responsivegrid) component in AEM 6.4 to have fixed width and full width layouts in our project. Below are the steps i followed to create an editable template but unable to see Allowed Components even after creating a policy and configuring components.

  1. Create an editable template, open it to find a Layout Container(wcm/foundation/components/responsivegrid)
  2. Create a policy at Layout Container root level to allow custom Layout Container
  3. Drag and drop custom Layout Container
  4. Create and set another policy to allow project specific components for example, title, text, etc...
  5. Unlock custom Layout Container, i do not see allowed components here, whereas for OOTB Layout Container, am able to see Allowed Components list.
  6. I believe this section is necessary to edit component policies where style system configurations can be set

Attached screenshot of we.retail hero-page template where it works

Note: sling:resourceSuperType of our custom layout container component is wcm/foundation/components/responsivegrid, we have just added dialog fields for full-width and fixed-width to add bootstrap classes container-fluid and container respectively.

Can someone please let us know if the above approach is correct or could you please point me to references to achieve our requirement.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
leoberliantAccepted solution
Adobe Employee
Jan 24, 2019 3:22 PM UTC

As per your post, the goal is to have "have fixed width and full-width layouts".

I don't think that you really need a custom layout component. In your editable template, you can add a layout container and then set teh width in Layout mode.

More staff can be applied to a layout container with a style. You can review this approach in WKND sample project:

https://helpx.adobe.com/experience-manager/kt/sites/using/getting-started-wknd-tutorial-develop/part4.html#putting-it-together

13 replies

smacdonald2008
Level 10
Jan 24, 2019 2:25 PM UTC

What changes in the code did you do in your custom layout container?

I assume if you use the OOTB Layout component - you are not seeing any issue.

Translate
srikanthp689160
Level 4
Jan 24, 2019 2:29 PM UTC

Hi smacdonald2008,

I just added a wrapper div with class="container" or class="container-fluid" in custom layout container sightly html script based on selection in component's dialog.

<div class="${properties.layoutClass == undefined ? 'container-fluid' : properties.layoutClass}">

<<-- OOTB code from responsivegrid.html -->>

</div>

Translate
srikanthp689160
Level 4
Jan 24, 2019 2:34 PM UTC

I do not see this issue with OOTB Layout component

Translate
antoniom5495929
Level 7
Jan 24, 2019 2:38 PM UTC

Hi,

have you tried to remove the style applied to the class that you are using in your wrapper?

Translate
leoberliantAdobe EmployeeAccepted solution
Adobe Employee
Jan 24, 2019 3:22 PM UTC

As per your post, the goal is to have "have fixed width and full-width layouts".

I don't think that you really need a custom layout component. In your editable template, you can add a layout container and then set teh width in Layout mode.

More staff can be applied to a layout container with a style. You can review this approach in WKND sample project:

https://helpx.adobe.com/experience-manager/kt/sites/using/getting-started-wknd-tutorial-develop/part4.html#putting-it-together

Translate
smacdonald2008
Level 10
Jan 24, 2019 3:38 PM UTC

I agree with Leo - you should be able to use the OOTB layout container to address your requirements.

Translate
srikanthp689160
Level 4
Jan 25, 2019 7:09 AM UTC

Hi,

It works if i remove the class(container/container-fluid) applied to the wrapper, but it does not serve my purpose because then custom layout component is exact copy of OOTB layout container.

Translate
Gaurav-Behl
Level 10
Jan 25, 2019 11:35 AM UTC

Just use your custom classes on OOB layout container as mentioned by Leo/Scott above, it would work fine

Translate
srikanthp689160
Level 4
Jan 30, 2019 1:44 PM UTC

Thanks everyone for the response. Followed the approach to handle it with the help of style system.

Thanks & Regards,

Srikanth Pogula.

Translate
Sep 13, 2019 1:33 PM UTC

I'll mention if you use ArchType 20 (I haven't checked earlier versions) to create an AEM project it will create a container component in your project's apps directory that uses a sling:resourceSuperType of the core components container object.

If you try to use that container you see the issues mentioned above.

If the OOTB layout container should be used, then why is the container component generated within the project when it lacks the functionality to show the allowed components within the container and doesn't let you set policies on those components?

It also doesn't work with the content exporter, if I view the model.json of a page, any components in my apps container aren't included, while they are when using the OOTB layout container.

Translate