Desarrollar un theme en WordPress va más allá del diseño. Un tema debe integrarse correctamente con el core, el editor y los plugins, respetando una serie de requisitos básicos.
En esta guía repasamos los puntos esenciales que deberías cumplir al crear un theme en WordPress.
Archivos obligatorios del theme
Todo theme debe contener, como mínimo:
mi-theme/
├── style.css
└── index.php
El archivo style.css debe incluir el header del theme:
/*
Theme Name: Mi Theme
Author: Tu nombre
Version: 1.0.0
Text Domain: mi-theme
*/
Sin estos archivos, WordPress no reconocerá el tema.
Uso correcto del Loop
El Loop es la base de WordPress para mostrar contenido.
Ejemplo:
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
}
}
Usar el Loop correctamente evita problemas con consultas, paginación y compatibilidad con plugins.
Separar diseño y funcionalidad
Un theme debe encargarse únicamente de la presentación.
No es recomendable que un theme:
- Cree Custom Post Types
- Añada lógica compleja
- Gestione opciones críticas
Ese tipo de funcionalidades deberían ir en plugins, no en el theme.
Compatibilidad con el editor de bloques
Hoy en día, Gutenberg es el editor por defecto de WordPress, por lo que la mayoría de themes modernos deberían ser compatibles con el editor de bloques para evitar problemas de diseño y experiencia de usuario.
No es obligatorio a nivel técnico, y en proyectos muy controlados puede desactivarse o no utilizarse. Sin embargo, ignorarlo en un theme generalista suele generar inconsistencias tanto en el editor como en el frontend.
Algunos soportes básicos:
add_theme_support( 'wp-block-styles' );
add_theme_support( 'align-wide' );
add_theme_support( 'responsive-embeds' );
Escape y seguridad al mostrar datos
Igual que en los plugins, cualquier dato dinámico debe escaparse antes de mostrarse:
echo esc_html( get_the_title() );
Este punto es fundamental para evitar errores y vulnerabilidades.
Diseño responsive y accesibilidad
Un theme actual debe ser responsive y accesible:
- Diseño mobile first
- HTML semántico
- Contraste adecuado
- Imágenes con atributos
alt
No solo mejora la experiencia del usuario, también afecta al SEO.
Soporte para child themes
Un theme bien construido debe permitir la creación de child themes sin complicaciones. Esto facilita personalizaciones sin modificar el código original.
Ejemplo de estructura básica de un theme
Como referencia final, este sería un ejemplo de estructura mínima y funcional de un theme en WordPress que cumple los requisitos comentados anteriormente:
mi-theme/
├── style.css
├── functions.php
├── index.php
└── screenshot.png
style.css
/*
Theme Name: Mi Theme
Author: Tu nombre
Version: 1.0.0
Text Domain: mi-theme
*/
functions.php
Aquí se suelen declarar los soportes del theme y cargar los estilos:
<?php
defined( 'ABSPATH' ) || exit;
function mi_theme_setup() {
add_theme_support( 'wp-block-styles' );
add_theme_support( 'align-wide' );
add_theme_support( 'responsive-embeds' );
}
add_action( 'after_setup_theme', 'mi_theme_setup' );
function mi_theme_styles() {
wp_enqueue_style(
'mi-theme-style',
get_stylesheet_uri(),
array(),
wp_get_theme()->get( 'Version' )
);
}
add_action( 'wp_enqueue_scripts', 'mi_theme_styles' );
index.php
Ejemplo sencillo usando el Loop:
<?php get_header(); ?>
<main>
<?php
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
?>
<article>
<h1><?php echo esc_html( get_the_title() ); ?></h1>
<div>
<?php the_content(); ?>
</div>
</article>
<?php
}
}
?>
</main>
<?php get_footer(); ?>
Este ejemplo no hace nada especial, pero es una base sólida sobre la que construir un theme más complejo sin romper buenas prácticas.
Errores comunes al desarrollar un theme en WordPress
Al crear un theme desde cero es habitual cometer algunos errores, sobre todo en proyectos pequeños o de pruebas:
- Incluir lógica de negocio directamente en el theme
- No escapar correctamente los datos al mostrarlos
- No pensar en el uso de child themes desde el inicio
- Ignorar el editor de bloques en proyectos generalistas
Evitar estos errores desde el principio ahorra tiempo y facilita el mantenimiento del theme a largo plazo.
Conclusión
Un buen theme no solo se ve bien, también está bien construido. Respetar estos requisitos básicos ayuda a crear temas más estables, compatibles y fáciles de mantener con el paso del tiempo.
A partir de esta base, el theme puede crecer en complejidad según las necesidades del proyecto, manteniendo siempre separadas la presentación y la funcionalidad.


