Limitar el número de palabras en el título de la entrada

11 dic 2012, 10:18:19
Vistas: 35.2K
Votos: 7

¿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.

0
Todas las respuestas a la pregunta 4
0

simplemente usa esto donde quieras mostrar tu título con un límite de palabras

<?php echo wp_trim_words( get_the_title(), 5 ); ?>

reemplaza el número 5 en el código anterior con el número de palabras que necesites mostrar.

Saludos.

11 dic 2012 11:23:00
0

Si se necesita el signo de continuación "..." al final del título

<?php
    echo wp_trim_words( get_the_title(), 10, '...' );
?>

Si no se necesita el signo de continuación "..." al final del título

<?php
    echo wp_trim_words( get_the_title(), 10 );
?>
15 ene 2018 14:11:52
3

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, '' );
}
11 dic 2012 11:08:42
Comentarios

¿Cómo se puede aplicar esto solo a un tipo de publicación específico?

Pete Pete
26 jul 2019 16:24:42

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; } }`

Pete Pete
26 jul 2019 17:00:05

@Pete Mira mi actualización. Agregué un ejemplo de cómo usar el objeto de publicación.

fuxia fuxia
26 jul 2019 20:49:22
0
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

11 dic 2012 10:32:58