Predefiniciones en las plantillas
Elementos predefinidos en las plantillas de Plone (versión 2.5 y 3)
Se suele perder mucho tiempo y añadir mucho código para acceder a ciertos datos en las plantillas a través de objetos 'tool'. Por ello me he fabricado esta plantilla con los elementos predefinidos cuando estamos en una plantilla .zpt ó pt.
Respecto a Plone 3 has surgido algunos cambios:
Cambios en Plone 3
El principal cambio afecta a los portlets, en ellos estas variables no están definidas, pero se puede llamar al objeto Plone obtenerlos de la siguiente forma:
<div tal:define="plone view/@@plone">
<a href="" tal:attributes="string:${plone/portal_url}/enlace">Enlace a algun sitio</a>
</div>
Bajo el objeto plone están todas las variables, en el ejemplo se obtiene la predifinición portal_url.
**Nota sobre los viewlets
Para que estas variables puedas ser utilizadas desde los viewlets, el viewlet no debe estar definido como una plantilla ".pt" desde el zml. Debe ser una clase hija de
from plone.app.layout.viewlets.common import ViewletBase
Aunque también es posible extraerlo de context directamente, ejemplo:
<a href="" tal:attributes="string:${context/portal_url}/enlace">Enlace a algun sitio</a>
Listado completo
Notas:
- Los elementos marcados con (*) están obsoletos, no se deben usar para mantener la compatibilidad en futuras versiones.
- Los elementos marcados con (**) no están obsoletos pero se quitarán ya que sólo se utilizan en plantillas específicas y no son de uso común.
| Predefinición | 2.5 |
3.x |
Objeto ó Atributo |
|---|---|---|---|
| utool (*) |
X |
Objeto del portal 'portal_url' |
|
| portal |
X |
Resultado de getPortalObject(), es decir, el objeto portal |
|
| portal_object (*) |
X |
Objeto portal, usar 'portal' en vez de este |
|
| portal_url |
X |
X |
Cadena con la dirección base del portal |
| mtool |
X |
Objeto 'portal_membership' |
|
| gtool (**) |
X |
Objeto 'portal_groups' |
|
| gdtool(**) |
X |
Objeto 'portal_groupdata' |
|
| atool (**) |
X |
Objeto 'portal_actions' |
|
| aitool(**) |
X |
Objeto 'portal_actionsicons' |
|
| putils |
X |
Objeto 'plone_utils' |
|
| wtool |
X |
Objeto 'portal_workflow' |
|
| ifacetool |
X |
Objeto 'portal_interface' |
|
| syntool |
X |
Objeto 'portal_syndication' |
|
| portal_title |
X |
Nombre el portal |
|
| object_title |
X |
El id o el título del objeto para el que se renderiza la plantilla |
|
| checkPermission |
X |
Objeto 'checkPermission' de 'portal_membership' |
|
| member |
X |
Usuario actualmente conectado o 'None' si es anónimo |
|
| membersFolder |
X |
Objeto contenedor de las carpetas de usuarios |
|
| isAnon |
X |
Verdadero si el usuario no ha iniciado la sesión |
|
| actions |
X |
Listado de acciones del objeto actual |
|
| keyed_actions |
X |
No estoy seguro: parece que las acciones (para llamarlas) y sus nombres |
|
| user_actions |
X |
Acciones de usuario |
|
| workflow_actions |
X |
Acciones del workflow para el objeto actual |
|
| folder_actions |
X |
Acciones para la carpeta actual |
|
| global_actions |
X |
Acciones globales |
|
| portal_tabs |
X |
Acciones correspondientes a las entradas superiores de la interfaz de plone |
|
| wf_state |
X |
Estado de revisión del objeto actual (entrada 'review_state') |
|
| portal_properties |
X |
Objeto de la raíz de portal con las 'properties_sheets'. Habitualmente los productos ubican su configuración ahí. |
|
| site_properties |
X |
Objeto hoja de propiedades 'site_properties' de 'portal_properties' con la configuración del portal |
|
| ztu |
X |
ZTUtils |
|
| wf_actions (*) |
X |
Usar 'workflow_actions' mejor |
|
| isFolderish |
X |
Indica si es una carpeta para almacenar objetos |
|
| slots_mapping |
X |
Listado de huecos |
|
| sl |
X |
X |
Portlets a la izquierda |
| sr |
X |
X |
Portlets a la derecha |
| here_url |
X |
Url completa del objeto actual |
|
| hidecolumns (*) |
X |
Ocultación de columnas |
|
| default_language |
X |
Lenguaje por defecto |
|
| language |
X |
Lenguaje seleccionado |
|
| is_editable |
X |
Verdadero si el objeto es editable por el usuario actual |
|
| isEditable (*) |
X |
Usar mejor is_editable |
|
| lockable (*) |
X |
Usar mejor isLocked |
|
| isLocked |
X |
Verdadero si el objeto está bloqueado (WebDav) |
|
| isRTL |
X |
No estoy seguro: Creo que la dirección de escritura |
|
| visible_ids |
X |
Verdadero si el usuario ve los ids de los objetos |
|
| current_page_url |
X |
URL de la página actual |
|
| normalizeString |
X |
Utilidad de normalización de cadenas |
|
| toLocalizedTime |
X |
X |
Formatear fecha siguiendo la configuración del portal |
| isStructuralFolder |
|||
| isContextDefaultPage |
Verdadero si es la página por defecto la carpeta |
||
| navigation_root_url |
URL de la raiz de navegación |
||
| Iterator |
|||
| tabindex |
|||
| uniqueItemIndex |

