Limitar el número de palabras en el título de la entrada
¿Existe alguna manera de limitar el número de palabras en el título de una entrada?
He buscado por internet pero no he encontrado nada.
Todo lo que sé es que solo se puede limitar o extractar el contenido de la entrada.

Existe una función incorporada para eso: wp_trim_words()
.
add_filter( 'the_title', 'wpse_75691_trim_words' );
function wpse_75691_trim_words( $title )
{
// limitar a diez palabras
return wp_trim_words( $title, 10, '' );
}
Si deseas recortar las palabras dependiendo de ciertas propiedades del post, pídele a WordPress que pase el ID del post a tu función de callback. Aquí hay un ejemplo para filtrar por tipo de post. Pero también puedes verificar términos asociados, antigüedad del post, autor e incluso metadatos del post.
add_filter( 'the_title', 'wpse_75691_trim_words_by_post_type', 10, 2 );
function wpse_75691_trim_words_by_post_type( $title, $post_id )
{
$post_type = get_post_type( $post_id );
if ( 'product' !== $post_type )
return $title;
// limitar a diez palabras
return wp_trim_words( $title, 10, '' );
}

Lo encontré...
`add_filter( 'the_title', 'wpse_75691_trim_words' );
function wpse_75691_trim_words( $title ) { $cur_pt = get_post_type(); if( 'some_post_type' == $cur_pt ) { // limitar a diez palabras return wp_trim_words( $title, 10, '' ); } else { return $title; } }`

function limit_word_count($title) {
$len = 5; //cambiar este valor al número de palabras deseado
if (str_word_count($title) > $len) {
$keys = array_keys(str_word_count($title, 2));
$title = substr($title, 0, $keys[$len]);
}
return $title;
}
add_filter('the_title', 'limit_word_count');
Puedes establecer cualquier tipo de límite en casi cualquier cosa que desees, solo necesitas el filtro correcto
