• Saltar a la navegación principal
  • Saltar al contenido principal
Código Genesis

Código Genesis

Tutoriales de WordPress y Genesis Framework

  • Empieza aquí
  • Cuenta
    • Suscripción
    • Perfil
    • Actualizar tarjeta
    • Favoritos
    • Salir
  • Suscribirse
  • Acceder

Añadir una clase de CSS en base al campo personalizado en el bloque de listado de contenido en WordPress

Descubre cómo añadir automáticamente una clase CSS a cada elemento del bloque de listado de contenido basándose en el valor de un campo personalizado.

El bloque nativo de WordPress que permite mostrar un listado de entradas (query block) es muy potente y flexible. Una de las funcionalidades más útiles es poder personalizar la apariencia de cada entrada individualmente mediante clases CSS.

En este tutorial te voy a mostrar cómo puedes añadir automáticamente una clase CSS a cada elemento <li> del bloque de listado de contenido basándose en el valor de un campo personalizado de cada entrada.

Esto es especialmente útil cuando quieres aplicar estilos diferentes según el estado, categoría o cualquier otro valor personalizado de cada entrada.

Código para añadir clase CSS basada en campo personalizado

Añade el siguiente snippet al fichero functions.php o a tu plugin de funcionalidades:

Para ver este código y los otros 2107 snippets de esta web,
identifícate o suscríbete aquí.

El código de arriba:

  • Utiliza el filtro render_block_core/query que se ejecuta cada vez que se renderiza un bloque de listado de contenido. Este filtro nos permite modificar el HTML generado antes de que se muestre al usuario.
  • Verifica que el plugin Advanced Custom Fields (ACF) esté activo antes de intentar obtener el campo. Para este ejemplo usamos campo creado con ACF.
  • Usa la clase WP_HTML_Tag_Processor nos permite procesar el HTML de forma segura y eficiente. Iteramos sobre cada elemento `<li>` del listado.
  • WordPress añade automáticamente una clase con el formato post-{ID} a cada elemento del listado. Usamos una expresión regular para extraer el ID del post.
  • Obtenemos el valor del campo personalizado para el post específico.

Si queremos personalizar el código solo tenemos que cambiar el nombre del campo personalizado. Para ello modifica esta línea para usar tu campo personalizado:

$estado_curso = get_field( 'tu_campo_personalizado', $post_id );

Ya lo tienes, ahora solo te queda aplicar el CSS que quieras en base al campo personalizado.

Conclusiones

Gracias a este código puedes añadir automáticamente clases CSS a cada elemento del bloque de listado de contenido basándose en los valores de campos personalizados, lo que te permite crear diseños dinámicos y personalizados sin esfuerzo manual.

Esta técnica es especialmente útil para sitios web que manejan diferentes estados, categorías o tipos de contenido que requieren estilos visuales distintos.

Si tienes alguna duda o quieres que expanda este snippet en un tutorial paso a paso, déjame un comentario aquí mismo o envíamelo a través del formulario de contacto.

Todo ventajas de ser suscriptor. 😉

Tutoriales relacionados

  • https://codigogenesis.com/crear-plugin-funcionalidades-wordpress/

Editor de bloques WordPress

Nahuai Badiola

Desarrollador web especializado en WordPress y Genesis Framework. CEO de Código Genesis y cofundador de OsomPress (temas y plugins para WordPress).

Para dejar dudas o preguntas sobre este código, puedes identificarte o suscribirte.

  • Empieza aquí
  • Sobre Código Genesis
  • Preguntas frecuentes
  • Contacto
  • Feed

Aviso legal · Política de privacidad · Política de cookies · Condiciones de contratación
Copyright © 2026 · Código Genesis

close-icon

¿Has olvidado tu contraseña?