Plantillas templates
Las plantillas se utilizan en varios puntos de AEM:
-
When crear una página, debe seleccionar una plantilla; se utilizará como base para la nueva página. La plantilla define la estructura de la página resultante, cualquier contenido inicial y el componentes que se puede utilizar (propiedades de diseño).
-
When crear un fragmento de contenido también necesita seleccionar una plantilla. Esta plantilla define la estructura, los elementos iniciales y las variaciones.
Las siguientes plantillas se tratan en detalle:
Plantillas - Páginas templates-pages
AEM ahora ofrece dos tipos básicos de plantillas para la creación de páginas:
Plantillas editables editable-templates
Las plantillas editables ahora se consideran prácticas recomendadas para el desarrollo con AEM.
Las ventajas de las plantillas editables:
-
Se han introducido para permitirle definir lo siguiente para cualquier página creada con la plantilla:
- la estructura
- el contenido inicial
- políticas de contenido
-
Una vez creada la nueva página, se mantiene una conexión dinámica entre la página y la plantilla; esto significa que los cambios en la estructura de la plantilla se reflejarán en cualquier página creada con esa plantilla (los cambios en el contenido inicial no se reflejarán).
-
Utiliza políticas de contenido (editadas desde el editor de plantillas) para mantener las propiedades de diseño (no utiliza el modo Diseño dentro del editor de páginas).
-
Se almacenan en
/conf
-
Consulte Plantillas editables para obtener más información.
Plantillas estáticas static-templates
Plantillas estáticas:
- Los desarrolladores deben definirlo y configurarlo.
- Este era el sistema de creación de plantillas original de AEM y ha estado disponible para muchas versiones.
- Una plantilla estática es una jerarquía de nodos que tiene la misma estructura que la página que se va a crear, pero sin contenido real.
- Se copian para crear la nueva página, no existe ninguna conexión dinámica después de esto.
- Usos Modo de diseño para mantener las propiedades de diseño.
- Se almacenan en
/apps
- Consulte Plantillas estáticas para obtener más información.
Disponibilidad de la plantilla template-availability
-
solo la variable
cq:allowedTemplates
property -
solo en la raíz del sitio
/content/we-retail/jcr:content
allowedPaths
, allowedParents
y allowedChildren
también se puede colocar en las plantillas para definir reglas más sofisticadas. Sin embargo, cuando es posible, es many más sencillo de definir cq:allowedTemplates
propiedades en subsecciones del sitio si es necesario restringir aún más las plantillas permitidas.cq:allowedTemplates
un autor puede actualizar las propiedades en la variable Avanzadas de la pestaña Propiedades de página. Las demás propiedades de la plantilla no se pueden actualizar mediante la interfaz de usuario (estándar), por lo que sería necesario que un desarrollador mantuviera las reglas y una implementación de código para cada cambio.Al crear una página nueva en la interfaz de administración del sitio, la lista de plantillas disponibles depende de la ubicación de la nueva página y las restricciones de colocación especificadas en cada plantilla.
Las siguientes propiedades determinan si una plantilla T
se permite para que una nueva página se coloque como un elemento secundario de la página P
. Cada una de estas propiedades es una cadena de varios valores que contiene cero o más expresiones regulares que se utilizan para hacer coincidir con rutas:
-
La variable
cq:allowedTemplates
propiedad de la variablejcr:content
subnodo deP
o un antecesor deP
. -
La variable
allowedPaths
propiedad deT
. -
La variable
allowedParents
propiedad deT
. -
La variable
allowedChildren
propiedad de la plantilla deP
.
La evaluación funciona de la siguiente manera:
-
El primer no vacío
cq:allowedTemplates
propiedad encontrada al ascender la jerarquía de páginas comenzando porP
se compara con la ruta deT
. Si ninguno de los valores coincide,T
se rechaza. -
If
T
tiene un no vacíoallowedPaths
, pero ninguno de los valores coincide con la ruta deP
,T
se rechaza. -
Si ambas propiedades anteriores están vacías o no existen,
T
se rechaza a menos que pertenezca a la misma aplicación queP
.T
pertenece a la misma aplicación queP
if y only si el nombre del segundo nivel de la ruta de acceso deT
es el mismo que el nombre del segundo nivel de la ruta deP
. Por ejemplo, la plantilla/apps/geometrixx/templates/foo
pertenece a la misma aplicación que la página/content/geometrixx
. -
If
T
tiene un no vacíoallowedParents
, pero ninguno de los valores coincide con la ruta deP
,T
se rechaza. -
Si la plantilla de
P
tiene un no vacíoallowedChildren
, pero ninguno de los valores coincide con la ruta deT
,T
se rechaza. -
En todos los demás casos,
T
está permitido.
El diagrama siguiente muestra el proceso de evaluación de la plantilla:
Limitación de plantillas utilizadas en páginas secundarias limiting-templates-used-in-child-pages
Para limitar las plantillas que se pueden usar para crear páginas secundarias en una página determinada, use la variable cq:allowedTemplates
propiedad de jcr:content
de la página para especificar la lista de plantillas que se permitirán como páginas secundarias. Cada valor de la lista debe ser una ruta absoluta a una plantilla para una página secundaria permitida, por ejemplo /apps/geometrixx/templates/contentpage
.
Puede usar la variable cq:allowedTemplates
en la plantilla jcr:content
para que esta configuración se aplique a todas las páginas recién creadas que utilicen esta plantilla.
Si desea agregar más restricciones, por ejemplo con respecto a la jerarquía de plantillas, puede usar la variable allowedParents/allowedChildren
propiedades de la plantilla. A continuación, puede especificar explícitamente que las páginas creadas a partir de una plantilla T deben ser páginas principales o secundarias de páginas creadas a partir de una plantilla T.
Plantillas: fragmentos de contenido templates-content-fragments
Consulte Plantillas de fragmento de contenido para obtener más información.