Obtener el contenido de una página específica (por ID)

14

Tengo la siguiente plantilla de portada:

ingrese la descripción de la imagen aquí

En lugar de esos grandes bloques de Lorem Ipsum , necesito mostrar un "extracto" de una página específica para llenar ese cuadro (una cierta cantidad de caracteres).

¿Cómo obtengo el contenido de una página en formato de cadena para poder reproducirlo y recortarlo a un cierto número de caracteres?

Samuel Stiles
fuente

Respuestas:

22
<?php

// would echo post 7's content up until the <!--more--> tag
$post_7 = get_post(7); 
$excerpt = $post_7->post_excerpt;
echo $excerpt;

// would get post 12's entire content after which you
// can manipulate it with your own trimming preferences
$post_12 = get_post(12); 
$trim_me = $post_12->post_content;
my_trim_function( $trim_me );

?>
Marc Dingena
fuente
21

Aqui tienes !

<?php
$my_id = 5369;
$post_id_5369 = get_post($my_id);
$content = $post_id_5369->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
echo $content;
?>
ameer hamza
fuente
44
Por favor, explique qué hace el código y cómo responde la pregunta. Algunos usuarios pueden no entender el código sin una pequeña explicación.
cybmeta
Realmente me gusta la forma en que agregaste el the_contentfiltro. +1 por eso.
Mohammad Mursaleen
Funciona hermoso!
Charles Xavier
2

puedes usar este código, funciona bien, cambia page_id = 19 con tu número de página:

<?php $the_query = new WP_Query( 'page_id=19' ); ?>

<?php while ($the_query -> have_posts()) : $the_query -> the_post();  ?>

                       <?php the_excerpt(); ?>


     <?php endwhile;?>
Haitham Shehata
fuente
1
Bienvenido a este sitio. Parece que esta es tu primera respuesta. Una explicación de por qué y cómo su respuesta resuelve el problema siempre es buena.
cybmeta
0

Si estás al tanto, haz esto:

<?php
$my_excerpt = get_the_excerpt();
if ( $my_excerpt != '' ) {
    // Some string manipulation performed
}
echo $my_excerpt; // Outputs the processed value to the page

O si tiene una identificación, obtenga la publicación y luego demande al miembro post_excerpt var

p.ej

$post = get_post( $post_id );
echo $post->post_excerpt;
Tom J Nowell
fuente
0

Pruebe este código y simplemente cambie su page_id:

<?php $my_query = new WP_Query('page_id=20');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;?>
 <h3><?php the_title(); ?></h3>
    <div class="text">

        <?php echo wp_trim_words( get_the_content(), 15, '...' ); ?>
 <a href="<?php echo get_page_link(); ?>" class="read-more">Read More</a>
    </div>

 <?php endwhile; ?>
Jmd Web Solutionss
fuente