Aprende a agregar subtítulos en las entradas y páginas de WordPress de manera simple a través de código, usaremos un campo personalizado para agregar el subtítulo y así evitaremos el uso de un plugin.
Resultado Final
Al final obtendremos algo similar a lo que se muestra en la siguiente imagen:

Agregar campo personalizado
Para agregar un subtítulo, necesitamos agregar ese dato en la base de datos, lo haremos a través de los campos personalizados de WordPress.
Primero necesitarás asegurarte de que los campos personalizados se están mostrando, puedes hacerlo desde las opciones de Gutenberg.

Aparecerá una pantalla en la cual tienes que activar la opción de Campos Personalizados.

Luego agrega un campo personalizado llamado “Subtitulo” y coloca el subtítulo que deseas que se muestre para esa entrada

Código para mostrar subtítulos en WordPress
El siguiente código se basa en el campo personalizado “Subtitulo” agregado anteriormente para mostrar el subtítulo en el detalle de páginas o entradas de WordPress.
En el código anterior:
- Usamos el hook wp_print_footer_scripts el cual hace referencia a una función anónima
- Obtenemos el subtítulo en la variables $subtitulo
- Validamos si existe subtítulo y lo insertamos a través de javascript
- Lo insertamos bajo el título principal que tiene la clase entry-title
Código CSS
El código anterior inserta el subtítulo con la clase dcms-subtitle, entonces puedes dar estilos al subtítulo usando como base esa clase.
.dcms-subtitle {
font-size: 30px;
margin-top: 30px;
display: block;
}
.dcms-subtitle:after,
.dcms-subtitle:before {
content: "—";
margin: auto 10px;
}
Conclusión
Como has podido comprobar, puedes insertar un subtítulo a páginas o entradas en WordPress usando simplemente un campo personalizado y código.
Magnifico artículo, he seguido los pasos y funciona genial, pero me gustaría saber si se puede modificar el snippet para que salga también en la pagina de archivo del blog y no solo en las entradas individuales.
Muchas gracias
Hola, si muestras el listado a través de una página si que debería funcionarte. Sin embargo para mostrar directamente una página de archivo, como categoría no será posible porque no tienes interfaz para poner el campo personalizado. Saludos.
Hola Jhon:
Dos cuestiones por si me las puedes resolver.
1. Al pegar el código en functions.php, el subtítulo me aparece en el lugar correcto, pero el problema es que el mismo subtítulo me aparece en todos los posts de la sección de posts relacionados (que en el tema Hueman lleva el título de “También te podría gustar”).
2. No consigo que me aparezca el Subtítulo en la Homepage.
Independientemente de tu respuesta, gracias por tu saber y esfuerzo en compartir.
Hola, en el código para que sólo aparezca en donde deseas especifica más la función: insertAfter(‘.entry-title’)
sólo esta con la clase .entry-title, pero podrías especificar más.
Con respecto a que no aparece en el home es por que tienes esta condición: if (is_singular()), sería agregar una condición de que estas también en el inicio o quitar directamente la condición.
Saludos.
Gracias Jhon, intentaré hacerlo.
Hice todo pero no me aparece visible.
Hola, es un cambio Javascript, prueba refrescar tu navegador o prueba en incógnito, si aún no aparece verifica si en la consola del Inspector de código se generan errores. Saludos.