Hi Javier_Burgueno,
Thank you for taking our requirement into account !
It is important for the solution to be as customizable as possible.
For this reason, option 2, which consists of allowing specific fragments through an allowed fragments list, would be preferable.
Our needs
As a developer, I want to centralize implementations in order to simplify maintenance and future updates.
As a content editor, I want to use predefined blocks to ensure design consistency across the website.
In the current state, Drop Zones should be avoided, because they allow users to insert any fragment.
Use case example
I have X Custom Fragments that include a button.
This button is itself implemented as a Custom Fragment (not the OOTB Button fragment).
Currently, as a developer, I have two possible approaches.
Solution 1: duplicate the button code in each fragment
In each of the X fragments, I embed the button code directly.
Drawback:
This approach is difficult to maintain. If the button code needs to be updated, I must update it in all X fragments, which increases the risk of errors or missed updates.
Solution 2: use a Drop Zone for the button
In the X fragments, I add a Drop Zone intended to host the button fragment.
Advantage:
The button code is managed in a single place. Any update to the button fragment is automatically propagated to all fragments that use it.
Drawback:
The Drop Zone allows users to add any fragment, not just the button fragment.
This creates a significant risk that other fragments could be dragged and dropped instead of the button, especially by interns or users with less experience in Liferay.
Please let us know if you need more information or additional use cases.
Jérémy