Soporte » Plugins y Hacks » Hacks » Acortar títulos con «…»

  • Resuelto maikel44

    (@maikel44)


    Hola, necesito ayuda para acortar los títulos con puntos suspensivos que tenga más de una cierta cantidad de palabras y encontré un código que es wp_trim_words que se supone que debería hacer eso, no estoy seguro de como debo insertarlo en este fragmento de código:

    <?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>

    Si alguien me puede ayudar se lo agradecería mucho.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • Moderador almendron

    (@almendron)

    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.

    Moderador kallookoo

    (@kallookoo)

    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 5 años, 7 meses por kallookoo.
    • Esta respuesta fue modificada hace 5 años, 7 meses por kallookoo. Razón: añado condicional function
    Moderador almendron

    (@almendron)

    @kallookoo

    He preferido indicar la otra alternativa porque así solo afecta allí donde lo ponga.
    Con el filtro queda afectado cualquier título.

    Moderador kallookoo

    (@kallookoo)

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

    Moderador almendron

    (@almendron)

    De nada. Un saludo.

    Moderador kallookoo

    (@kallookoo)

    Lo mismo digo…

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • El debate ‘Acortar títulos con «…»’ está cerrado a nuevas respuestas.