22.5.06

¡Nos mudamos de dominio!

Decidí, por varias razones, unificar los blogs sobre "PHP Cinco", "Framework Pear" y "Template Smarty" en el nuevo dominio: PHP Senior.

Toda la información en este post: ¡Nos mudamos de dominio!

11.2.06

Respetar los "retorno de carro" de un texto de nuestra base de datos

Caso: levantamos un campo de texto de nuestra base de datos que tiene un formato con retornos de carro, es decir, tiene escritos tres párrafos separados con un [Enter].


Si nosotros tomamos ese campo, tal cual, y lo incluimos en nuestra plantilla html, nuestro texto quedará todo junto sin saltos.

Si visualizamos el código que estamos viendo desde nuestro navegador, el texto aparecerá con los "saltos de carro" correctos.


¿Por qué sucede esto?

Bueno, en HTML solo se toma en cuenta *un solo espacio*, los restantes no son tenidos en cuenta, ni tampoco los comandos que representan "retorno de carro" (\n) o los tabuladores (\t), etcétera.

¿Cómo podemos solucionarlo con Smarty?


Una expresión regular que toma el contenido "en bruto" y busca los comandos "\n" y los sustituye con un "salto de línea" en formato HTML.


{$elemento.texto_noticia|regex_replace:"/[\n]/":"<br>"}

Resultado: si tiene un solo "retorno" (\n) se coloca uno "break", si tiene dos, agrega dos "break", dando el efecto de separación con linea en blanco.


De la misma forma, podríamos hacer con los "\t", y agregándoles, por ejemplo, una serie de espacios en formato html:     

Simple, sencillo, directo ;-)

PD: estoy casi seguro que esta "estrategia" está escrita en algún lado, tal vez en el manual del Smarty, o en un artículo (porque vino demasiado rápido a mi cerebro ;-).

10.2.06

Sitios "multi idioma"

En este pequeño post nos cuenta como se puede armar una estructura que permita crear sitios que manejen varios idiomas, o por lo menos, tener una versión que soporte más de un idioma.

Fuente: Buayacorp

25.1.06

Manejo de Fechas: el "Copyright"

Es muy común que cuando cambiamos de año, como en este caso de 2005 a 2006, lo primero que queda desactualizado son los mensajes de "Copyright". En estos casos se manejan formatos del tipo:

Copyright 1995-2005 - República de los Jedis

Donde se maneja un rango de años, desde el inicio del sitio hasta la fecha actual.

Nota: ni idea si esta "formalidad" tiene algún peso legal, y si está basado en alguna norma, o simplemente nos fuimos copiando unos a otros hasta que se hizo "estándar".

Que sucede: en los sitios estáticos (es decir, su contenido solo cambiará si es modificado a mano) la fecha actual deberá ser actualizada, cambiando el año 2005 por el 2006.

Lo peor que podría pasar es que el sitio no fuera "modular", es decir, que cada página de nuestro sitio no tuviera "ciertos contenidos" centralizados que al modificar en un único lugar impacten en todo el sitio web.

Por ejemplo, este es un caso. Si nuestro sitio es completamente estático y cuenta con 50 páginas, deberemos recorrer y modificar el año de Copyright de las 50. Si, verdaderamente grave si para algo tan sencillo, debemos hacer tanto trabajo.

En mi caso, esta zona la considero como el "pie" del sitio, como así
también existe el "cabezal", y se encuentra en un solo archivo que es
incluido por todas las páginas del sitio. Editamos el archivo, cambiamos el año a 2006, y problema solucionado.

A pesar de todo, me queda el "retrogusto amargo" de que el año que viene tendré el mismo problema ;-), por lo consiguiente llegué a la conclusión que el último año es una información dinámica que debe darla el sistema: "el año actual"

Código original

<!--{strip}-->
<div class="footer">
<p>Copyright 1995 - 2006 - República de los Jedis</p>
</div>
<!--{/strip}-->


Que podemos cambiar la línea siguiente por:

<p>Copyright 1995-<!--{$smarty.now|date_format:"%Y"}--> - República de los Jedis</p>

Si, di una introducción larga para darle un poco más de sentido a tan poco código ;-)

Enlaces relacionados:
¡Suertempila!