Cómo mostrar the_excerpt sin la etiqueta P envolvente

13 ene 2011, 22:59:00
Vistas: 30K
Votos: 14

En el fragmento de código siguiente, estoy intentando obtener the_excerpt para que se muestre sin etiquetas. Sin embargo, el formato del código fuente muestra que the_excerpt siempre está envuelto en etiquetas P. ¿Cómo puedo obtener el extracto sin etiquetas?

foreach($myrecentposts as  $idxrecent=>$post) 
{ ?>
<li class="page_item">
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php echo strip_tags(substr( the_excerpt(), 0, 75 ))."..." ?>
</li><?php }    
echo "</ul>
</div>";}
0
Todas las respuestas a la pregunta 6
0
19

en tu código anterior usa get_the_excerpt() en lugar de the_excerpt(), porque este último mostrará el extracto directamente en pantalla y no lo pasará a tus otras funciones...

13 ene 2011 23:36:09
1

¿Qué tal si eliminamos el filtro wpautop antes de tu lista?

remove_filter( 'the_excerpt', 'wpautop' );

(Asegúrate de volver a agregarlo después, para no afectar el formato de otros elementos...)

13 ene 2011 23:03:44
Comentarios

Esta es la respuesta correcta y eliminará específicamente el formato en la página particular que estás utilizando para mostrar el contenido.

Charles Charles
17 oct 2016 19:02:49
0

Probé las respuestas anteriores pero no funcionaron para mí.

Intenté usar the_excerpt pero no mostraba ningún contenido, así que usé el siguiente código y funcionó perfectamente

// $search_text = the_excerpt();
$search_text = get_the_excerpt();

// Eliminar la etiqueta <p> reemplazándola con cadena vacía
$tags = array("<p>", "</p>");
$search_content = str_replace($tags, "", $search_text);

// Mostrar el contenido
echo $search_content;

Espero que esto también arroje más luz para alguien más.

Saludos

15 nov 2019 07:53:11
1

<?php echo strip_tags(get_the_excerpt()); ?> esto funcionó para mí

disculpas por esto => El cuerpo debe tener al menos 30 caracteres; ingresaste 18.

16 feb 2023 06:45:00
Comentarios

Esto no proporciona una respuesta a la pregunta. Una vez que tengas suficiente reputación, podrás comentar en cualquier publicación; en su lugar, proporciona respuestas que no requieran aclaración del que pregunta. - Desde la Revisión

cjbj cjbj
16 feb 2023 15:44:59
0

Si no deseas etiquetas <p> al usar the_excerpt(), puedes utilizar echo get_the_excerpt() en su lugar, que elimina las etiquetas <p>.

Si además quieres asegurarte de eliminar saltos de línea y espacios en blanco, puedes usar echo wp_strip_all_tags( get_the_excerpt(), true );.

El uso de get_the_excerpt podría causar un offset indefinido -1, en cuyo caso necesitarías verificar primero con has_excerpt().

20 oct 2023 19:31:22
0
-1

A continuación, la solución utilizando el plugin ACF:

<p>
    <?php
        $summary = get_field('introductory_text');
        echo strip_tags(substr($summary, 0, 520));
    ?>
    <a href="<?php the_permalink(); ?>"> ...leer más</a>
</p>
27 nov 2017 01:46:25