|
|
Los Archivos de contenido definen los valores de los macros.
Este es un ejemplo de un archivo de contenido:
[@TITLE]:
Bienvenido a Webgenz
[@]
[@BODY_CONTENT]:
Bienvenido a Webgenz, la utilería de generación de sitios Web.
El programa está diseñado para ayudarle a construir y mantener
sitios Web con más eficiencia que nunca antes.
[@]
Notas:
- El Valor del macro está contenido dentro de etiquetas de inicio y de cierre. La etiqueta de inicio es la Etiqueta del macro en sí seguida por ":". La etiqueta de cierre es [@]. La etiqueta de cierre debe aparecer en una línea sola. Los caracteres específicos usados en las etiquetas de macros se pueden configurar usando la pantalla de "Opciones" del programa.
- Puede haber Etiquetas de macro adicionales dentro de un Valor de macro. En otras palabras, las Etiquetas de macro pueden anidarse. El reemplazo de las etiquetas de macro ocurrirá conforme a lo esperado. El nivel de anidamiento necesita definirse en la pantalla de "Opciones" del programa.
- IMPORTANTE Para preservar el formato del documento HTML generado, cada línea de un valor de macro multilínea tendrá como prefacio cualquier rexto (típicamente espacio en blanco) que aparezca a la izquierda de la Etiqueta de macro en el Archivo de plantilla. Si hay código HTML a la izquierda de una Etiqueta de macro en un Archivo de plantilla, el Valor de macro debe ser un valor de una sola línea, a menos que pretenda ponerle como prefijo a cada línea del Valor de macro este código HTML. En consecuencia, usualmente lo mejor es poner una Etiqueta de macro en su propia línea en un Archivo de plantilla --a menos que esté seguro de que el Valor de macro es un valor de una sola línea. (Para leer más...)
Tópicos avanzados:
- La "herencia" es un concepto clave en Webgenz. Cuando Webgenz trata de reemplazar una Etiqueta de macro con un Valor de macro, primero trata de indagar si el macro está definido en el Archivo de contenido primario. Si no está definido ahí, Webgenz trata de hallarlo en la jerarquía de archivos de contenido buscando la definición del macro.
- Es posible hacer de los macros "subclases". Por ejemplo, un Archivo de contenido global podría contener un macro llamado [@JAVA_SCRIPT], el cual contiene un fragmento de código de JavaScript que debe estar a disposición de cualquier documento del proyecto. Un Archivo de contenido primario puede definir su propio macro [@JAVA_SCRIPT] como sigue:
[@JAVA_SCRIPT]:
código de JavaScript
[@^JAVA_SCRIPT]
[@]
La última línea de este Valor de macro es una Etiqueta de macro que hace referencia a la misma Etiqueta de macro, pero el signo "^" indica que Webgenz debe empezar a buscar el Valor de macro a partir del Archivo de contenido padre.
- Se pueden pasar parámetros a Valores de macro. Un macro que recibe parámetros se define como sigue:
[@MY_MACRO(@a:1)(@b:2)(@c)]:
Este macro imprime los valores (@a), (@b) y (@c).
Los parámetros "a" y "b" tienen valores por omisión, el parámetro "c" no.
[@]
Este macro define tres parámetros: "a", "b" y "c". Los parámetros "a" y "b" están definidos con los valores por omisión "1" y "2".
Este macro puede ser llamado desde un Archivo de plantilla en cualquiera de las formas siguientes:
[@MY_MACRO] - Cuando es llamado sin parámetros, se usan los valores implícitos de los parámetros.
[@MY_MACRO(@a:Sí)(@b:No)(@c:Tal vez)] - Cuando es llamado con parámetros, los valores pasados al macro serán reemplazados por los parámetros del macro.
[@MY_MACRO(@c:Tal vez)(@b:No)(@a:Sí)] - El orden de los parámetros no es importante. Los parámetros son llamados por su nombre, no por su posición.
[@MY_MACRO(@a:Sí)] - Los parámetros son opcionales. Si no se proporciona un valor para un parámetro, se usará el valor por omisión. Si no se proporciona un valor por omisión, el parámetro será reemplazado por un espacio en blanco.
|