¿Cómo convertir el título de una página a minúsculas?
En mi caso de prueba, el título de la página es "Privacy". El enfoque directo
strtolower(the_title())
también devuelve "Privacy" -- todavía con la P mayúscula. También probé
mb_strtolower(the_title())
y
mb_strtolower(the_title(), 'utf8')
con resultados similares.
No estoy seguro si importa, pero mi wp-config.php tiene
define('WPLANG', '');
define('DB_CHARSET', 'utf8');

Convertir el título a minúsculas
Si te entiendo correctamente, deberías hacer:
strtolower(get_the_title());
o
print strtolower(get_the_title());
si quieres mostrarlo. A continuación se explica el porqué.
the_title() vs. get_the_title()
La función the_title()
imprime el título de la entrada actual a menos que pases false
como tercer argumento. A menos que la llames así:
$title = the_title('', '', false);
El título se imprimirá y la variable $title
no contendrá nada. Esto es importante porque llamar a strtolower()
en una variable vacía no hace mucho.
En la mayoría de los casos donde buscas llenar una variable con el título de la entrada, quieres usar la función get_the_title()
.
Sin embargo, ten en cuenta que si no estás actualmente en un loop, necesitarás pasar un ID de entrada a get_the_title()
. En casi todos los casos cuando estás en una entrada o página única, puedes hacer esto usando:
get_the_title($post->ID);
ya que la variable $post
debería estar en el ámbito global.

Aquí tienes un excelente plugin para hacer esto. Está en mi sitio web, WordPress.org, Github y otros. Es 100% gratuito, sin versiones de membresía. Siéntete libre de descargarlo. Esto lo hace a nivel de datos, lo que te permite cambiarlo más tarde o hacerlo en algunos y no en otros. Es una buena opción, y como dije. ¡Funciona genial!
Mi sitio:
https://properprogramming.com/tools/wp-change-titles-case/
WordPress: https://wordpress.org/plugins/change-titles-case/
