Es probable que quien haya leido el reciente artículo de SpamLoco donde nos cuentan de las nuevas funciones agregadas a la Herramientas para Desarolladores de Google, sólo lo haya visto como una información interesante pero que poco tenía que ver con nuestros blogs.
Sin embargo, si usamos Blogger, yo diría que mejor la tengamos guardada en los marcadores porque nos toca de cerca.
Es usual que en el inicio de un blog (y también después) experimentemos con gadgets, scripts y todo tipo de servicio ofrecido por terceros. Es una práctica normal; un proceso inevitable pero a la vez, es una forma de arriesgarse ya que ese código que agregamos es incontrolable y muchas veces dejamos la puerta abierta para cualquier cosa.
También es probable que hayamos visto que al agregar cierto gadget aparece publicidad indeseada, pop-ups que no sabíamos que existían y suelen ser nuestros visitantes los que nos advierten. Esto es molesto pero aún peor es si el gadget inyecta cualquier tipo de código o enlace que Google considera malicioso. En ese caso, los sancionados seremos nosotros ya que somos responsables de todo aquello que mostramos.
No crean que esto no ocurre y no crean que esto es un detalle menor; las consecuencias son graves y complicadas de resolver:
"Ahora bien, no es extraño que los sitios legítimos sean atacados para inyectar códigos maliciosos, si esto se logra y el webmaster no detecta a tiempo la filtración, seguramente Google marque al sitio como sospechoso, pasando a formar parte de su lista negra.
Hace un tiempo comenté ¿qué hacer si Google marca nuestro sitio como peligroso?, cuando esto sucede lo que se debe hacer es limpiar el código y enviarle una solicitud a Google para que realice un nuevo escaneo y así elimine el sitio de su lista negra."
Las nuevas funciones agregadas nos permiten anticiparnos a esta situación por lo que hay que tenerlas muy en cuenta.
Las encontramos en el Panel de nuestro sitio bajo el título de Labs y si hacemos click en Detalles de malware nos mostrará el resultado del análisis que hace Google y, eventualmente, la lista de páginas afectadas y los detalles del código malicioso o sospechoso.
Las API de Páginas de diagnóstico de Google siguen funcionando y son una forma manual de verificar lo mismo; se accede a ellas colocando la siguiente URL en el navegador:
Allí se mostrará un breve análisis y de cómo fue evaluado el sitio en los últimos 90 días, e incluye un dato curioso, muestra un enlace al hosting donde está alojado lo que nos lleva al análisis de este que, en este caso, sería blogspot:
"... de los 145933 sitios verificados en los últimos 90 días, 172 contenían software malicioso que fue descargado e instalado sin consentimiento del usuario ..."
Moraleja: En casa de herrero, cuchillo de palo dice el refrán ...
La característica principal de un blog es que eso que publicamos se ordena de manera cronológica, desde lo más nuevo hasta lo más viejo, por lo tanto, el dato que indica la fecha suele ser un dato importante.
Uno podría imaginar que las entradas son una serie de rectángulos apilados, cada uno de ellos conteniendo datos (fecha, titulo, etc) y eso sería lógico pero, la forma en que Blogger maneja las fechas de las entradas es extraña; por algún motivo, esa fecha está afuera, en un rectángulo separado y accedemos a ella con un dato tan particular que sólo se muestra una vez, es decir, si hay dos entradas en la misma fecha, sólo se muestra una de ellas:
El formato de esa fecha es la que podemos establecer en Configuración | Formato:
Formato de cabecera de fecha
En un blog "normal con algún truco, podemos hacer que se muestre en todas las entradas, algo imprescindible si usamos alguna característica gráfica como los calendarios pero que esté separada no sólo molesta en este sentido, también complica las cosas cuando usamos alguna clase de plantilla donde se muestran las entradas de manera resumida ya que debemos ocultar esa fecha.
En realidad, no es necesario seguir las reglas de Blogger y es más sencillo eliminar ese dato tal como está ya que de todos modos, la fecha es accesible igual sólo que el dato a leer es otro.
En una plantilla mínima, la fecha se muestra de este modo:
<data:post.dateHeader/> es el dato que contiene la fecha y es el que molesta así que fuera con él; eliminamos todo eso de un plumazo.
Hay un segundo dato que nos da la fecha y que se encuentra dentro del post en si mismo y es todo lo que que necesitamos. Se llama <data:post.timestamp/>
Por lo general la vemos en el footer de los posts y lo usamos para mostrar la hora de la publicación ya que así está establecido por defecto pero, en la misma Configuración | Formato, podemos seleccionar la forma en que se mostrará. Por ejemplo, la definimos como fecha:
Formato de hora
De ese modo, la hora no será la hora sino la fecha en formato mes/dia/año y la vamos a usar para crear un DIV nuevo que contenga el encabezado completo de cada entrada, la fecha, el título, el autor y cualquier otra cosa que se me ocurra.
Por defecto, el título de las entradas se encuentra en <b:includable id="post" var="post" > y tiene este código:
Eso, hará que ahora, las entradas sean rectángulos individuales y por lo tanto, serán mucho más sencillas de manipular cuando intentemos resumirlas:
La primera parte contiene un script optativo que se usará para descomponer la fecha y mostrarla de manera diferente; su código debería agregarse antes de </head> y es el siguiente:
<script type='text/javascript'>
//<![CDATA[
// LAS FECHAS DE LOS POSTS
var mes=new Array();
mes[1]="ene"; mes[2]="feb"; mes[3]="mar"; mes[4]="abr"; mes[5]="may"; mes[6]="jun";
mes[7]="jul"; mes[8]="ago"; mes[9]="sep"; mes[10]="oct"; mes[11]="nov"; mes[12]="dic";
function calendario(cual) {
var verCero;
var lafecha = cual.split('/');
verCero=lafecha[1].substr(0,1); if (verCero == "0") { lafecha[1]=lafecha[1].substr(1) }
fday = "<span class='lafechaDia'>"+lafecha[1]+"</span>";
fmonth = "<span class='lafechaMes'>"+mes[lafecha[0]]+"</span>";
fyear = "<span class='lafechaAnio'>"+lafecha[2]+"</span>";
document.write(fday+fmonth+fyear);
}
//]]>
</script>
Nos faltaría agregar el CSS.
Aquí lo más importante es agregarle la propiedad position:relative al DIV con el encabezado. Esto será la clave para poder ubicar cada parte de su contenido de manera absoluta, sin márgenes extraños, flotaciones que perturben ni propiedades complejas; de tal forma que pueda verse correctamente en cualquier navegador. Agregamos entonces las definiciones entre <b:skin> y </b:skin>.
No hay demasiadas restricciones al respecto:
/* titulo de los posts */
.post .elEncabezado {
/* lo importante es definir ancho, alto y posición */
background-color: #000;
height: 70px;
margin: 20px 0;
position: relative;
width: 100%;
}
.post h3.post-title {
border-bottom: 1px solid #444;
border-top: 1px solid #444;
font-family: Lucida Grande,sans-serif;
font-size: 28px;
font-weight: normal;
line-height: 1.4em;
margin: 0;
width: 410px;
/* con esta propiedades posicionamos el título */
padding: 10px 0 20px 60px;
position: absolute;
left: 0;
top: 0;
}
.post h3.post-title a, .post h3 a:visited {
/* estas propiedades deben colocarse porque el título es un enlace */
color: skyBlue;
display: block;
font-family: Lucida Grande,sans-serif;
font-size: 28px;
font-weight: normal;
text-decoration: none;
}
/* el autor de los posts */
.post .elAutor {
color: skyBlue;
/* con esta propiedades posicionamos al autor */
position: absolute;
right: 5px;
top: 45px;
}
/* la fecha de los posts */
.lafecha {
display: block;
font-family: Verdana,Arial;
font-weight: normal;
height: auto;
line-height: normal;
text-align: center;
width:40px;
/* con esta propiedades posicionamos la fecha */
position: absolute;
left: 5px;
top: 4px;
}
.lafechaDia {
color: #6495ED;
display: block;
font-family: Georgia;
font-size: 36px;
}
.lafechaMes {
color: #94D5FD;
display: block;
font-size: 14px;
margin-top: -10px;
}
.lafechaAnio {
color: #DDDDEE;
display: block;
font-size: 14px;
margin-top: -6px;
}
En resumen, dentro de un rectángulo llamado elEncabezado, colocamos cada parte a mostrar y usamos la propiedad position:absolute para ubicarlo en un lugar preciso y eso lo hacemos con las propiedades top, bottom, left y right.
Ahora que lo tenemos todo el post en un solo bloque, ya podemos empezar a ver la forma de mostrarlo resumido.
El cubo 3D generado sólo con CSS es un experimento de fofronline que aprovecha las propiedades -moz-transform de Firefox 3.5 y -webkit-transform de Safari así que sólo es visible en esos navegadores.
Me adelanto .. no, no creo que tenga demasiada aplicación practica.
Esta es la cara superior del cubo ... y sólo contiene un texto de prueba ... el viejo Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
Esta es la cara izquierda
Con textos formateados con diferentes etiquetas y estilos.
Sed diam nonummy nibh euismod tincidunt
Esta es la cara derecha y aqui puse un texto y una imagen
Este es el esquema del código HTML:
<div class="cube">
<div class="topFace">
<div> ... el contenido de la cara superior ... </div>
</div>
<div class="leftFace"> ... el contenido de la cara izquierda ... </div>
<div class="rightFace"> ... el contenido de la cara derecha ... </div>
</div>
csstxt.com es un sitio donde ingresamos un texto y seleccionando una serie de opciones de formato, nos devuelven un código HTML que podemos usar en nuestra página web.
Contempla todas las propiedades que afectan los textos, tanto las elementales como font, text-align, text-decoration y text-weight, así como las menos usadas tales como letter-spacing, word-spacing y line-height. También podemos establecer colores, fondos, márgenes, etc.
En cualquier momento, Generate nos muestra una previsualización y el código resultante:
<p style="font-weight:normal;font-family:palatino linotype, palatino, serif;text-decoration:none;text-align:center;color:#DDEEFF;background-color:#556677;letter-spacing:-1pt;word-spacing:1pt;font-size:20px;line-height:1;border:dotted 2px #99AABB;padding:10px;"> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. </p>
Basta copiarlo y pegarlo tal cual o bien usar las definiciones de estilo que nos dan para aplicarlo a otros textos:
El mensaje aparece cada vez que pretendo ingresar a la pestaña donde se moderan los comentarios, es decir, donde se muestran antes de ser publicados ... y ya llevamos con eso más de 24 horas. El resultado práctico es que no pueden ser publicados y allí estan, durmiendo la siesta.
Pero no debería quejarme ya que la misma página de error me dice: vaya y lea sobre este problema en esta pagina que oh Dios, tiene fecha 22 de septiembre lo que significa que hace muuuuuuuuuuuuucho que el problema persiste y que ahora me tocara a mi es sólo una consecuencia de esta ruleta rusa llamada Blogger.
También me dicen que no es necesario reportar el problema aunque luego me dicen que lo reporte, describiendo ¿qué estaba haciendo? ¿qué navegador usaba? y sólo puedo responder: hice click y pasa con todos ... si nada lo satisface, busque bX-lhziiw en los Grupos de Ayuda de Blogger donde la única respuesta que hay es enviarnos al reporte del 22 de septiembre para competar el círculo y dejarnos en babia.
En algunos otros foros se reporta lo mismo y las respuestas siguen siendo las mismas: ninguna.
Lo único que pude hacer al respecto es cambiar la Configuración y habilitar el envío por correo de los comentarios en moderación y, al parecer, desde allí, es posible publicarlos aunque es bastante más engorroso.
Nacido en el tercer mundo. Un santo varón. Buenos Aires. Los elefantes. Las golondrinas de Plaza de Mayo. Me chupo el dedo.
El tiempo es veloz. ¿No ves que ya no somos chiquitos? Despedida de la infancia. Todo es efímero. Juguetes perdidos. Dime quién me lo robó. Aprendizaje.
Soy un hippie. Rutas argentinas. Sobredosis de TV. Raros peinados nuevos. Más de cien mentiras. Delirium tremens.
Ciudad de pobres corazones. El karma de vivir al sur. Mundo de quimeras. Oh Dios, ¿Qué puedo hacer?
Cuando era más joven. Los mayores del mundo. Botas locas. Rejas electrificadas. Cerca de la revolución. Contra todos los males de este mundo. La casa desaparecida. Tumbas de la gloria. Vencedores vencidos. Carguen, apunten, fuego. Estás frito angelito. A lo mejor aún te acuerdas.
Ah, te vi entre las luces. Muchacha. Amor se llama el juego. Juego de seducción. Mi genio amor. Prométeme que nunca me dirás adiós. Pequeñas delicias de la vida conyugal. Toda la vida tiene música hoy. Es hora de levantare, querido (dormiste bien?).
Resumiendo.
Mi sueño de hoy. La sed verdadera. La búsqueda de la estrella. Todos juntos. ¡Ah! Basta de pensar.