16 agosto 2011

5 Reglas que de no cumplirse, evitarán que guardes cambios en la plantilla

mujer jalandose los pelos estresada
Imagina este panorama: estás pegando algún código o escribiendo alguno en el código de tu plantilla (en editar HTML), pinchas en vista previa o quieres guardar los cambios y resulta que no se puede, y te sale un mensaje en inglés que traducido al español, la primeras lineas dicen algo así:

La plantilla no se pudo analizar, ya que no está bien formada. Por favor, asegúrese de que todos los elementos XML se han cerrado correctamente...

Luego, se te ponen los pelos de punta, pegas el brinco en el cielo, y sales corriendo a preguntarle a alguien por qué pasa eso...

En la mayoría de los casos, esos errores que nos marca los podemos corregir nosotros mismos, sin tener que ir a preguntárselo a alguien.

Sólo necesitamos saber ciertas reglas, y poner atención a lo que dice el mensaje de error.  Pues es precisamente de esas reglas de lo que hoy hablaremos.

Las plantillas de blogger (de diseño) es un documento con formato XHTML servido como XML, y así es como está declarado en la plantilla, y lo puedes ver al principio:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Sé que pueden sonar complicados muchos de los términos que vemos, como XHTML, XML, etc., pero, lo más importante de todo, es conocer las reglas que tienen que cumplirse para evitar los errores, y poder hacer cambios en la plantilla exitósamente.

Aunque existen otros errores que no precisamente tienen que ver con las reglas del XHTML, o en otros casos, al romperse algunas de estas reglas no marca error la plantilla, lo cierto es que si se incumplen algunas de estas reglas, no nos deja guardar los cambios que hagamos.

Veamos cuáles son las reglas que al NO cumplirse, causan problemas:

Regla 1. Los valores de los atributos deben estar entrecomillados.

Por ejemplo, el código de un enlace, donde es usado el atributo "href"

Esto es correcto:

<a href="http://www.blogger.com">Blogger</a>

Esto es incorrecto:

<a href="http://www.blogger.com>Blogger</a>

Como puedes ver, al valor, y que es la URL de la página de Blogger, le faltan las comillas al final. Si ésto lo pusiéramos incorrecto, al querer guardar los cambios, nos diría el siguiente mensaje:

Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. <br/> XML error message: Open quote is expected for attribute "{1}" associated with an element type "href".

Puedes colocar una comilla simple, en lugar de una doble. De hecho Blogger cambiará una comilla doble por una simple.

Regla 2. La etiquetas se tienen que cerrar de acuerdo como se abren ("el que se abre al último, debe cerrarse primero")

Esto es correcto:

<a href="http://blogger.com"><span style="color: red;">Blogger</span></a>

Esto es incorrecto :

<a href="http://blogger.com"><span style="color: red;">Blogger</a></span>

Si lo pusiéramos de este útimo modo, nos marcaría este error:

Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. <br/> XML error message: The element type "span" must be terminated by the matching end-tag "</span>".

Es decir, nos diría que una etiqueta no está cerrada, y aunque en toda esa linea si aparece la etiqueta cerrada, no esta en el orden que debería.

Regla 3. Todas las etiquetas deben cerrarse siempre, estén vacías o no, y se cierran con este caracter: "/"

Esto es muy común que provoque problemas. Algunos ejemplos :

Esto es correcto:

<div class="cosa">aquí otras cosas de la cosa</div>

Esto es incorrecto:

<div class="cosa">aquí otras cosas de la cosa<div>

Si lo incumpliéramos nos marcaría este error:

Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. <br/> XML error message: The element type "div" must be terminated by the matching end-tag "</div>".

En otros casos, puede ser que haga falta el </div> completo.

Y para el caso de las etiquetas vacías.

Esto es correcto:

<br></br>

Luego Blogger lo convierte en ésto:

<br />

Así que desde un principio se pueden escribir así.

Esto es incorrecto:

<br>

Regla 4. Los atributos no se pueden comprimir. Aunque es raro que los usemos a partir de algún tutorial, éste es un ejemplo:

Esto es correcto:

<input checked="checked" />

esto es incorrecto:

<input checked>

Regla 5. Escribir en minúsculas atributos y etiquetas.

Aunque si escribimos en mayúsculas alguna etiqueta, no nos marca error al querer guardar los cambio, ésto No es correcto, por lo tanto no hay que hacerlo, ejemplo:

Esto es correcto:

<a href="http://www.blogger.com">Blogger</a>

Esto incorrecto:

<a HREF="http://www.blogger.com">Blogger</a>

Otros errores de dedo, que también provocan errores al querer guardar cambios en la plantilla:

Mensaje:
Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. <br/> XML error message: The element type "bsection" must be terminated by the matching end-tag "</bsection>".

Causa y solución:

Hace falta los dos puntos ":" entre b y section es decir, en alguna parte está como:

bsection

y debería esta de este modo:

b:section

Mensaje:
Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. <br/> XML error message: The end-tag for element type "b:section" must end with a '>' delimiter.

Causa y solución:

Al elemento b:section le falta un corchete angular o cuña ">"

Ahora cuando no puedas guardar los cambios porque te marca un error, presta mucha atención a lo que dice el mensaje, y hecha un vistazo a estas reglas.

La clave es no desesperarse y centrase en lo último que estamos agregando, seguramente ahí esta el error que nos marca y en el peor de los casos, si no lo encontramos, siempre es aconsejable salirse de ahí, y volver a intentarlo otra vez.

También, recuerda que siempre es aconsejable descargar la plantilla completa antes de hacer un cambio en la plantilla.

Referencias y otra información oportuna:
Qué es XHTML, HTML 4 y XML
Sintaxis de las etiquetas XHTML

Artículos recomendados:

Gracias por compartir tu comentario y hacernos saber tu opinión.