Comunidad de diseño web y desarrollo en internet online

Jugando con los metodos para hacer plantillas

Citar            
MensajeEscrito el 26 Dic 2006 05:43 pm
No es la gran cosa, pero quería compartir este pequeño código con ustedes.

A veces necesito hacer cosas en mi plantilla como:

Código :

<p class="error"> {error} </p>


y asignarle los errores a una variable de plantilla "error" en caso de que se consigan. Pero, ¿y si no se envian errores? Me gustaría que tampoco se imprima el <p class="error"></p> vacío; sin tener que para ello hacer esto:

Código :

<?php
$plantilla->asignarVariable('error','<p class="error">SE ENCONTRO UN ERROR</p>');
?>


por esto, jugando un poco hice unos delimitadores extra que, en caso de no conseguir la variable declarada, no impriman el html alrededor...

Por aca dejo el codigo:

Los delimitadores del HTML son { y } y la variable se coloca entre | y | (igual se puede modificar)

Código :

<?php

$prueba = '{<h4>|test|</h4>}';

function imprimirConHTM($variable,$htm1,$htm2) {

$vector['test'] = "Hola"; //temporalmente declarado aca, para efectos de ejemplo, el vector de variables podria ser un vector de la clase o una variable normal...

if ( isset( $vector[$variable] ) ) return $htm1.$vector[$variable].$htm2; //si se encuentra devuelve concatenando el html original

return NULL; //sino no devuelve nada

}

$prueba = preg_replace('@{([\w\W]*)\|([a-z0-9\-_]*?)\|([\w\W]*)}@si', "'. imprimirConHTM('$2','$1','$3') .'", $prueba); //sentencia para reemplazar las ocurrencias con la funcion

eval("echo '$prueba';"); //let it run

?>


Saludos.

Por Duilio

Claber

2590 de clabLevel

25 tutoriales
1 articulo

Genero:Masculino   Premio_Secretos

Venezuela

firefox
Citar            
MensajeEscrito el 31 Dic 2006 06:41 pm

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 03 Ene 2007 06:12 pm
hola inyaka! hace ya unas semanas que hice eso... en realidad, como me gusta reinventar la rueda hice mi propia clase, pero me sirvio muchisimo ver los ejemplos de dano y maikel

Por Duilio

Claber

2590 de clabLevel

25 tutoriales
1 articulo

Genero:Masculino   Premio_Secretos

Venezuela

firefox
Citar            
MensajeEscrito el 24 Ene 2007 04:11 pm
Yo lo haria con AJAX y CSS

Por Pitxon

38 de clabLevel



Genero:Masculino  

Madrid

firefox
Citar            
MensajeEscrito el 24 Ene 2007 04:19 pm
¿que tiene que ver ajax en todo esto? ¿sabes que es y para que sirve una plantilla?

PD. si se trata de galerías de imágenes prefiero flash, pero esa galería es solo un ejemplo de uso de platilla

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 24 Ene 2007 11:07 pm
Veo que he metido la pata inyaka, creia que se trataba de otra cosa.
A tu pregunta he de decir que no.
Se utilizan para no tener que escribir el codigo html en todas las paginas del sitio de manera que hacer cambios en la estructura general resulte simple.
Por cierto estaria muy interesado en saberrealmente que es una platilla y cual es la mejor forma de crearlas ya que en el tuto de cristalab no me entero muy bien.
Muchas gracias

Por Pitxon

38 de clabLevel



Genero:Masculino  

Madrid

firefox
Citar            
MensajeEscrito el 25 Ene 2007 01:00 am
una plantilla es eso, una plantilla que con php le metes lo datos dentro de las llaves {miVar} por ejemplo miPlantilla.tpl:

Código :

<?xml version="1.0" encoding="UTF-8"?>
<!doctype html public "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title> {titulo}</title>
</head>
<body>
{contenido} <!-- "contenido" a su ves puede ser elaborado con otras plantillas como con el ejemplo de la galería-->
</body>
</html>


mi consejo es que juegues con la clase de Dano y Maikel, por ejemplo has un menú basado en plantillas, esto es muy útil para no poner código de html en tus script de php

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.