Sustituye por
<?php
$trimmed = wp_trim_words( get_the_title(), $num_words = 1, $more = null );
echo '<h2 class="entry-title"><a href="' . esc_url(get_permalink()) . '" rel="bookmark"' . '>' . $trimmed . '</a></h2>';
?>
Donde la variable $num_words es el número de palabras.
Veamos,
Tu solucion la puedes aplicar mediante el filtro «the_title» que te permite modificarlo.
Copia este codigo dentro del archivo functions.php de tu theme.
if ( ! function_exists( 'theme_title_trim_words' ) ) {
function theme_title_trim_words( $title, $id ) {
if ( is_single() || is_page() ) {
return $title;
}
$num_words = 55; // El numero de palabras
return wp_trim_words( $title, $num_words );
}
}
add_filter( 'the_title', 'theme_title_trim_words', 10, 2 );
— Edit —
No refresque la pagina y por lo visto @almendron te respondio ya, con otra alternativa.
-
Esta respuesta fue modificada hace 7 años, 5 meses por
Sergio.
-
Esta respuesta fue modificada hace 7 años, 5 meses por
Sergio. Razón: añado condicional function
@kallookoo
He preferido indicar la otra alternativa porque así solo afecta allí donde lo ponga.
Con el filtro queda afectado cualquier título.
@almendron, tienes razon para eso estan los filtros aunque siempre estan las condicionales.
Yo lo indique porque no dicepor ejemplo «En X pagina quiero acortar el titulo» y entiendo que lo quiere hacer en todo el diseño.
Actualizo el anterior para que en single muestre el titulo completo, 😉
Iniciador del debate
maikel44
(@maikel44)
@almendron @kallookoo Muchas gracias a ambos, los dos códigos me sirvieron, lo siento por no haber especificado que lo quería solo para el slider, de todas maneras muchas gracias me salvaron.