Obtenez le contenu d'une page spécifique (par ID)

14

J'ai le modèle de première page suivant fait:

entrez la description de l'image ici

Au lieu de ces gros blocs Lorem Ipsum , je dois montrer un "extrait" d'une page spécifique pour remplir cette case (un certain nombre de caractères).

Comment puis-je obtenir un contenu de pages au format String afin de pouvoir le reproduire et le réduire à un certain nombre de caractères?

Samuel Stiles
la source

Réponses:

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
la source
21

Voici !

<?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
la source
4
Veuillez expliquer ce que fait le code et comment il répond à la question. Certains utilisateurs peuvent ne pas comprendre le code sans une petite explication.
cybmeta
J'aime vraiment la façon dont vous avez ajouté le the_contentfiltre. +1 pour cela.
Mohammad Mursaleen
Fonctionne magnifique!
Charles Xavier
2

vous pouvez utiliser ce code il fonctionne très bien changez page_id = 19 avec votre numéro de page:

<?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
la source
1
Bienvenue sur ce site. Il semble que ce soit votre première réponse. Une explication de pourquoi et comment votre réponse résout le problème est toujours bonne.
cybmeta
0

Si vous êtes dans la boucle, faites ceci:

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

Ou si vous avez un ID, obtenez le message puis poursuivez le membre post_excerpt var

par exemple

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

Essayez ce code et changez simplement votre 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
la source
0

Pour un toxicomane comme moi. Modifiez 69 par votre ID de page.

<?= apply_filters('the_content', get_post(69)->post_content); ?>
Etienne Dupuis
la source