logowp1 Los archivos elementales de WordPress (1)Entre muchas cosas, se dice que WordPress es interesante porque puede configurarse a gusto, mucho más que cualquier otro sistema en su tipo y con mucha más facilidad. Esto es cierto pero también es falso porque en realidad, nunca nada es tan fácil ni tan difícil como parece; depende de nuestros conocimientos, de la buena suerte y de la paciencia. Sobre todo, de la paciencia.

Pero empezamos un blog y buscamos una plantilla. Seguramente, nunca encontramos la que queremos; miraremos decenas de ellas y por fin, algunas no parecerán aceptables pero, nos gustaría probarlas en "la vida real de nuestro blog" así que seguiremos los pasos que nos indican y haremos alguna entrada de prueba para verla. Siempre habrá algo que no nos termine de convencer pero acabaremos eligiendo alguna porque llega un momento en que nos damos cuenta que no vamos a encontrar la plantilla perfecta.logowp2 Los archivos elementales de WordPress (1)

Pasado un tiempo nos decimos, bueno algo tengo que hacer para arreglar esto, para quitar esas palabras en inglés, para reordenar el footer o ampliar tal o cual área. Así que hacemos click en el editor de temas y empezamos a pensar "tal vez cometí un error y WordPress no es para mi" ¿Dónde está la plantilla? ¿qué es esa lista de archivos? ¿por dónde empiezo?

Vemos que nos muestra Stylesheet (style.css) y eso, si ya tenemos algo de experiencia, podemos reconocerlo como una hoja de estilo. Bien, no es mucho pero algo es algo. A la derecha, una lista muestra enlaces y nombres, duplicados para que parezcan más: Header (header.php), Main Index Template (index.php), etc, etc.

Con osadía podemos abrir uno y luego otro y un tercero, vemos códigos, reconocemos alguno de ellos, otros son chino básico.

Con lógica indiscutible nos decimos, "empecemos por el primero", por el más obvio y miramos el llamado Header (header.php). Si sabemos algo de HTML vamos a ver que "casi" lo entendemos pero de pronto, por arte de magia, termina abruptamente ¿y ahora?

En realidad, el problema es que empezamos mal. Es que el archivo principal es otro: index.php. Podríamos decir que ese es el primero que se ejecuta y de alguna manera, es el que "dirige" a todos los demás.

Veamos la lista otra vez pero sólo los archivos "importantes", las plantillas pueden tener muchos otros pero estos, suelen estar en todas:

  • style.css es la hoja de estilo principal donde encontramos las declaraciones CSS
  • index.php es el que maneja la forma en que se ve nuestro blog
  • header.php es el que contiene el encabezado
  • footer.php es el que contiene el pie de página del sitio
  • sidebar.php es el que maneja las sidebars
  • comments.php es el que maneja la forma en que se muestran los comentarios
Hablando en términos sencillos, lo que ocurre es que se empieza a ejecutar el contenido del archivo index.php y desde este se van cargando los otros.

Esto se hace llamando algunas funciones de WordPress Basta colocarlas para que busquen entre los archivos aquellos que tienen los nombres por defecto y los ejecuten. Esas funciones elementales son: get_header(), comments_template(), get_sidebar() y get_footer()

La estructura elemental de un archivo index.php sería algo así:

  1. <?php get_header(); // se carga header.php ?>
  2.  
  3. <?php if (have_posts()) : ?>
  4.   <?php while (have_posts()) : the_post(); ?>
  5.     [... el bucle que muestra los posts ...]
  6.     <?php comments_template(); // se carga comments.php ?>
  7.   <?php endwhile; ?>
  8. <?php else : ?>
  9.   [... lo qué se ve en caso de no encontrarse una página ...]
  10. <?php endif; ?>
  11.  
  12. <?php get_sidebar(); // se carga sidebar.php ?>
  13.  
  14. <?php get_footer(); // se carga footer.php ?>

Lo primero que ocurre al ejecutarse index.php es que se carga el archivo header.php y, cuando termina, volvemos al index.php y el proceso continúa allí, por ejemplo, mostrando los posts y eventualmente los comentarios; luego se cargará la sidebar así que pasamos al archivo sidebar.php. Del mismo modo, al terminar volvemos al index.php que carga el footer y pasamos al archivo footer.php y al terminar, volvemos al index.php.

Por fin, como ya no hay nada más, el navegador nos muestra el blog completo.