Ir al contenido
Otras versiones

Cargando…

Creación de plantillas de texto

Registre la definición del grupo de metadatos en Administration > Metadata.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 3.10//EN"
"http://www.openkm.com/dtd/property-groups-3.10.dtd">
<property-groups>
<property-group label="Sample Template" name="okg:tpl">
<input label="Name" name="okp:tpl.name"/>
<input label="Birth Date" name="okp:tpl.birth_date" type="date" />
<select label="Language" name="okp:tpl.language" type="simple">
<option label="Java" value="java"/>
<option label="Python" value="python"/>
<option label="PHP" value="php" />
</select>
</property-group>
</property-groups>

Para establecer una relación entre el campo del formulario de la plantilla y el grupo de metadatos, debe nombrarlos siguiendo una convención de nomenclatura: sustituya “:” y “.” por “_”. Aquí puede ver la correspondencia entre ambos campos:

Metadata field name Template field name Template field value
okp:tpl.name okp_tpl_name ${okp_tpl_name!}
okp:tpl.birth_date okp_tpl_birth_date ${okp_tpl_birth_date!}
okp:tpl.language okp_tpl_language ${okp_tpl_language!}

Para este tipo de plantilla, crearemos una plantilla HTML. Este es el código fuente de la plantilla:

<html>
<body>
<h1>Sample template</h1>
<table>
<tr>
<td><b>Name</b></td>
<td>${okp_tpl_name!}</td>
</tr>
<tr>
<td><b>Birth Date</b></td>
<td>${okp_tpl_birth_date?string("yyyy-MM-dd")!}</td>
</tr>
<tr>
<td><b>Language</b></td>
<td>${okp_tpl_language!}</td>
</tr>
</table>
</body>
</html>

Las etiquetas ${okp_tpl_name!}, ${okp_tpl_birth_date!} y ${okp_tpl_language!} se sustituirán por los valores introducidos por el usuario. Se producirá un error y se abortará el procesamiento de la plantilla si intenta acceder a una variable inexistente, pero el operador ! gestiona esta situación. Además, puede establecer un valor por defecto en caso de que falte uno con esta expresión:

${missing_value!"The default one"}

El resultado es un fichero HTML con la entrada del cliente solicitada por OpenKM.

OpenKM usa FreeMarker, así que puede aprovechar la flexibilidad de formato de FreeMarker. Por ejemplo, puede establecer el formato de fecha de esta manera:

${okp_tpl_birth_date?string("yyyy-MM-dd")!}

Aprenda más sobre el formato de FreeMarker en Built-in Reference.

  • Suba el fichero tpl.html a /okm:templates/documents con el contenido descrito anteriormente.
  • Registre la definición de metadatos okg:tpl en Administration > Metadata
  • Habilite los metadatos desde profiles en Administration > Profiles
  • Añada el grupo de metadatos okg:tpl al fichero tpl.html.