Ottenere il contenuto di un post WordPress tramite l'ID del post
Come posso ottenere il contenuto di un post WordPress utilizzando l'ID del post?

Semplice come può essere
$my_postid = 12;//Questo è l'id della pagina o del post
$content_post = get_post($my_postid);
$content = $content_post->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
echo $content;

Scorciatoia per un campo specifico: $content = get_post_field('post_content', $my_postid);

@Bainternet sono solo curioso... a cosa serve la parte $content = str_replace(']]>', ']]>', $content);
? qual è il suo scopo?

@AverageJoe è una semplice ricerca e sostituzione. Quando si usa the_content() il contenuto viene filtrato. Poiché nell'esempio sopra il contenuto è stato recuperato direttamente, l'autore ha utilizzato la ricerca e sostituzione per renderlo sicuro.

forse hai anche bisogno di do_shortcode() come $content = do_shortcode(get_post_field('post_content', $my_postid));

meglio farlo come echo apply_filters('the_content', get_post_field('post_content', $post_id));
. Per esempio quando si usa qTranslate, la tua soluzione non sarebbe sufficiente.

Questa è la migliore risposta se l'obiettivo è ottenere il contenuto del post così come appare nella pagina di modifica di WordPress.

Senza il codice di @KarelAttl mancavano le interruzioni di riga. Con il codice apply_filters funziona perfettamente.

Un altro modo per ottenere il contenuto di un post WordPress tramite l'ID del post è:
$content = apply_filters('the_content', get_post_field('post_content', $my_postid));
Per completare questa risposta ho aggiunto anche il metodo 01 e il metodo 02.
Metodo 01 (il merito va a bainternet):
$content_post = get_post($my_postid);
$content = $content_post->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
Metodo 02 (il merito va a realmag777):
$content = get_post_field('post_content', $my_postid);
Metodo 03:
$content = apply_filters('the_content', get_post_field('post_content', $my_postid));
Leggi la domanda Qual è il modo migliore/più efficiente per ottenere il contenuto WordPress tramite l'ID del post e perché? per capire quale dei tre metodi dovresti utilizzare.

A partire da WordPress 5.2.0,
Possiamo ora utilizzare l'oggetto post o l'ID del post nella funzione get_the_content
.
Possiamo anche passare $more_link_text e $strip_teaser
get_the_content( string $more_link_text = null, bool $strip_teaser = false, WP_Post|object|int $post = null )
Possiamo utilizzarlo insieme a apply_filters
come mostrato di seguito per ottenere tutti i filtri di the_content
apply_filters( 'the_content', get_the_content(null, false, $post_id)),

Se hai bisogno di più di un articolo, utilizza get_posts()
. Questa funzione lascia inalterata la query principale e restituisce un array di articoli facile da scorrere in un ciclo.
