lunes, 3 de junio de 2013

1. El desarrollo de su "sentido temático"

(El artículo original y en inglés, fue publicado el 23 de octubre de 2012)

ThemeShaper es el sitio del Equipo de Temas de Automattic, que, en junio de 2009, publicaron una muy popular serie de 11 artículos de Ian Stewart, bajo el título: How To Create a WordPress Theme: The Ultimate WordPress Theme Tutorial (Como crear un Tema de WordPress: el tutorial definitivo).
El año pasado, reflotaron y actualizaron ese tutorial. Esta vez con 16 artículos a cargo de Michelle LangstonThe ThemeShaper WordPress Theme Tutorial: 2nd Edition (Tutorial de Temas de WordPress de ThemeShaper. Segunda edición).
Me propongo traducir libremente esas 16 entradas (además de la introducción) e ir publicándolas a medida que las tenga listas.
Al final de cada entrada va el listado con todas las entradas de este tutorial.

¿Qué es "sentido temático"?

Diremos que el "sentido temático" es una comprensión intuitiva de los Temas (o plantillas) de WordPress: de la relación entre los archivos que componen un Tema, y de cómo esos archivos encajan en WordPress.
"Sentido temático" es lo que usted tendrá al final de este tutorial.

"Sentido temático" no quiere decir memorizar código

Number Sense 
Pensemos por un momento en las matemáticas y en el sentido numérico. Si se le enseña a un niño simplemente a memorizar cuentas aritméticas con tarjetas didácticas, sin explicar por qué las respuestas son las que son, seguramente, ese niño va a tener problemas cuando se encuentre con una cuenta que no haya aprendido de memoria. Ser capaz de demostrar, por ejemplo, 5 +2 = 7 con bloques ayuda a que el niño "vea" cómo funcionan los números. Después, puede utilizar este conocimiento para ayudarse a resolver cualquier problema que se le presente en el futuro, incluso si no ha aprendido la respuesta de memoria.

El "sentido temático" funciona de la misma manera. Es importante centrarse en el panorama general de lo que se esté tratando de lograr, en lugar de memorizar los bits de código específicos.



¿Cómo puedo desarrollar mi "sentido temático"?

Si ha leído hasta aquí, ya casi lo tiene. "Sentido temático" es ser consciente de lo que se está haciendo, y tomar decisiones conscientes e informadas a lo largo del camino. Por ejemplo, si le pido que me diseñe un coche, usted sabe inmediatamente qué partes debe incluir en su diseño - motor, chasis, neumáticos, ventanas, caños de escape, etc-. Es posible que no sepa cómo trabajan todas y cada una de esas partes, pero sí sería capaz de explicar por qué las necesita en el diseño, y sabría revisar la calidad de las piezas - algo súper importante cuando se trata de seguridad-. Sus años de experiencia conduciendo automóviles le ha llevado a tener un "sentido automovilístico".
Utilice un enfoque similar al encarar su próximo proyecto de Tema para WordPress. Las grandes preguntas que debe hacerse son: "¿Qué archivos debo incluir en mi Tema? ¿Qué papel juegan esos archivos? ¿Por qué estoy a punto de pegar este fragmento de código en mi Tema? ¿De dónde vino este fragmento de código y quién lo escribió? ¿Para qué sirve este trozo de código? ¿Está actualizado? ¿Es seguro?"
Usted no tiene por que entender los mecanismos detrás de cada línea de código PHP, ya que pueden cambiar varias veces lo largo del camino. Lo que sí es importante es que, al igual que con los automóviles, sea capaz de demostrar una comprensión macro de lo que su Tema está haciendo detrás de bambalinas.
Dicho esto, aquí hay algunas cosas que usted puede hacer para desarrollar ese entendimiento macro y para mantener agudo su "sentido temático".

Sepa "qué hay de nuevo" en WordPress

El código de WordPress está por toda la web. Incluso ya encontró su camino fuera de línea y en libros y revistas. Cuando mira las estrellas en el cielo nocturno, las está viendo como existieron hace millones de años. Del mismo modo, cuando examina una muestra de código de WordPress, esa muestra es una instantánea de WordPress tal y como existía en el momento de la escritura de ese código, y no necesariamente del WordPress tal como existe ahora.

El conocimiento de las últimas versiones de WordPress y de las principales características nuevas, le ayudará a evaluar lo actualizado de los tutoriales, libros y plugins de WordPress. Para mantenerse al día con las versiones de WordPress, suscríbase al blog de noticias de WordPress.

Adquiera el hábito de comprobar las fechas

Lo primero que usted debe comprobar antes de leer cualquier tutorial o libro es la fecha de su publicación. Recuerde lo importante que es saber ¿"qué hay de nuevo" en WordPress? Eso le ayudará a evaluar qué partes de un tutorial son todavía relevantes, y qué código todavía es lo suficientemente actual como para utilizar en su Tema. Como usted ya sabe, es peligroso utilizar código obsoleto en un Tema, ya que puede tener vulnerabilidades conocidas que los hackers pueden explotar. Sin embargo, la relevancia no es una cuestión de todo o nada, y el código no viene con fecha de caducidad. Debe determinar la relevancia, caso a caso.
De todos modos, si igualmente utiliza código desactualizado en un Tema, no es el fin del mundo. Hay plugins, como Developer y Theme-Check, que lo ayudarán, respectivamente, a optimizar el entorno de desarrollo de su Tema de WordPress y a examinar el código del mismo para comprobar si sigue siendo actual.
Además de los plugins de desarrollo, es recomendable acostumbrarse a adoptar las mejores prácticas en seguridad, listadas en los lineamientos de seguridad y privacidad de los Temas, en la página Reseñas de Temas del Codex de WordPress. Revise el listado y tome nota de los ítems que refieren a características que esté utilizando en su Tema. Por ejemplo, los ítems que refieren a validación y saneamiento de datos son necesarios para proteger su sitio de los ataques de secuencias de comandos en sitios cruzados o Cross-Site-Scripting (XSS). Creo que el principio detrás del segundo ítem de esa lista es especialmente pertinente cuando hablamos sobre la relevancia y presistencia del código:
Se requiere que los Temas implementen deliberadamente páginas de opciones y configuraciones del Tema, en vez de confiar en scripts copiados y pegados desde tutoriales de sitios web.
Los scripts copiados y pegados se pueden volver obsoletos muy rápido. Esto es cierto no solo para el código para las opciones del Tema, sino para el código de cualquier tutorial. Lo que más me importa que aprenda es a ser consciente de la importancia de la persistencia y de mantener su Tema lo más seguro posible.

Entienda los elementos esenciales de los Temas de WordPress

Theme Building BlocksLa mayoría de los sitios web, potenciados por WordPress o no, tienen las mismas secciones generales: una cabecera, un área para el contenido principal, una barra lateral y un pie. Puede ser de ayuda pensar en esas secciones como bloques (o autopartes, según su preferencia). Algunos bloques, como la cabecera (header), el pie (footer), el contenido (content) y la barra lateral (sidebar), los utilizará en todos los Temas que desarrolle. Podrá unirlos de manera diferente dependiendo del propósito que su Tema quiera brindar a los usuarios. Con los Temas de WordPress, los archivos de plantilla como header.php, index.php, sidebar.php y footer.php son sus "bloques". Por lo tanto, el Tema es la estructura completa que usted construye con estos bloques.




El conocimiento de estos elementos esenciales lo ayudará mucho a desarrollar su "sentido temático". Para una cartilla rápida sobre las partes de un Tema de WordPress, visite la página The Theme Development del Codex de WordPress.

Sepa donde encontrar los ejemplos de código más actuales y estándares

El Codex de wordpress.org es un gran punto de partida para investigar las funciones de WordPress y las etiquetas de plantillas que se encuentran en los tutoriales. Si una función está desaprobada, la página del Codex para esa función se lo hará notar y lo dirigirá a la alternativa más actual. También puede encontrar una lista en el Codex con todas las funciones desaprobadas.
El plugin Log Deprecated Notices revisa su Tema en busca de funciones desaprobadas, así como de archivos de plantilla desactualizados y usos incorrectos de funciones.
El equipo de Revisión de Temas de WordPress tiene un set de lineamientos que todos los Temas deben cumplir para ser aprobados para el directorio oficial de Temas libres de wordpress.org. Evaluar su código tomando como referencia esos estándares lo puede ayudar a mantenerse al tanto de las mejores prácticas y estándares.
Finalmente, para cuando tenga alguna duda, hay algunos lugares a donde recurrir, como la sección Themes & Templates del foro de soporte de wordpress.org. Si prefiere chat en vivo, está el #wordpress support channel en la red irc.freenode.net.
Esto no quiere decir qué nunca debe romper el molde cuando construya un Tema. Más bien, la idea es que lo más inteligente es estar consciente de las decisiones que está tomando en cada tema que desarrolle y sepa por qué está tomando esas decisiones.

Consejos

Los puntos para tomar como consejos de esta lección son:
  • Sea consciente de como se ve WordPress en la actualidad.
  • Sepa cuáles son las principales nuevas características introducidas en la versión más reciente de WordPress.
  • Preste atención a las fechas de cualquier tutorial relativo a WordPress. Úselos, combinando su conocimiento de las características más recientes de WordPress para evaluar la relevancia de cualquier tutorial dado.
  • Entienda que el código cambia periódicamente, pero los bloques constructivos básicos de un Tema, generalmente, permanecen iguales.
  • Sea consciente de las mejores y más actuales prácticas y estándares. Esto puede ser práctico para evaluar, también, la relevancia de un tutorial.
  • Entienda por qué está tomando las decisiones que está tomando para su Tema - por ejemplo, ¿qué propósito cumple cada archivo de plantilla en su Tema? Si está a punto de pegar dentro de su Tema un bloque grande de código que desempolvó vía Google, ¿que propósito cumple dicho código?  ¿Es relevante? ¿Está actualizado? ¿Es seguro? No necesita memorizarse todas las líneas de PHP. Lo importante es que sea capaz de comprender su Tema desde un nivel macro.

Sumario de entradas

  1. Introducción. 
  2. El desarrollo de su "sentido temático".
  3. Herramientas para el desarrollo de Temas de WordPress
  4. Creación de una estructura HTML para su Tema de Wordpress.
  5. Plantillas y estructura de directorios de un Tema de WordPress.
  6. Configuración de las funciones de su Tema.
  7. Asegure su Tema de WordPress.
  8. La plantilla cabecera del Tema de WordPress: header.php.
  9. La plantilla Index de su Tema de WordPress.
  10. Las plantillas Entrada Individual, Entrada de Adjuntos y error 404 del Tema de WordPress .
  11. La plantilla de comentarios de un Tema de WordPress.
  12. La plantilla de búsqueda (search) y la plantilla página (page) del Tema de WordPress.
  13. La plantilla Archivo.
  14. Las plantillas "sidebar" (barra lateral) y "footer" (pie de página) del Tema de WordPress.
  15. Como resetear y reconstruir los CSS de su Tema de WordPress y definir su diseño.
  16. Fondo y cabecera personalizados.
  17. Distribuir su Tema de WordPress.

No hay comentarios:

Publicar un comentario

Lo que escriba a continuación será revisado antes de publicarse.
Gracias por tus comentarios.