• Resuelto milapercia

    (@milapercia)


    Hola quisiera acortar los titulos de mis entradas a determinados caracteres o con puntos suspensivos. Por ejemplo si un post tiene 60 palabras yo solo quiero que muestre 5. Estos cambios quiero que los aplique solo en la pagina de inicio y categorías. En los post si quiero que aparezca completo todos los caracteres.

    Cabe resaltar que mis páginas (inicio y categorías) están siendo construidas con elementor y no las he dejado por defecto a como los trae WordPress.

    En un foro encontré este código, pero no me funcionó en la página de inicio:

    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 );

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

Viendo 4 respuestas - de la 1 a la 4 (de un total de 4)
  • Adrián de Grafreak

    (@adriandegrafreak)

    Hola @milapercia

    Para que te funcione en la página de inicio deberías quitar
    || is_page() del código que pasaste.

    Espero que así se resuelva tu problema.

    Iniciador del debate milapercia

    (@milapercia)

    Genial, aunque el código te acorta por palabras. No es posible por número de caracteres?

    Adrián de Grafreak

    (@adriandegrafreak)

    Para numero de caracteres debes utilizar otra función diferente.

    Cambia wp_trim_words( $title, $num_words ) por mb_strimwidth( $title, 0, $num_words, "...")

    Espero que con esto consigas lo que quieres.

    Iniciador del debate milapercia

    (@milapercia)

    Ya pude, muchas por tu ayuda.

Viendo 4 respuestas - de la 1 a la 4 (de un total de 4)

El debate ‘Acortar titulos’ está cerrado a nuevas respuestas.