web-dev-qa-db-fra.com

Comment obtenir le contenu d'une publication à l'aide de l'API WordPress?

J'ai essayé d'utiliser

<?php
$my_id = 7;
$post_id_7 = get_post($my_id); 
echo $post_id_7->post_content;
?> 

basé sur la documentation ici .

L'article que j'essaie de récupérer a un code abrégé, qui est repris par un plugin sur mon site, puis formaté en HTML.

Le problème est que lorsque je publie le post_content sur le site, le code abrégé n’est pas capté par le plug-in, et j’écris simplement le code abrégé directement dans le navigateur.

Existe-t-il un moyen de faire évaluer correctement le code court? Ou est-ce que j'utilise la mauvaise fonction?

8
Joseph

Le champ d'objet de la publication contient le contenu brut tel qu'il est stocké dans la base de données. Cela devrait le formater de la façon dont il apparaît lorsqu'il est récupéré avec les balises de modèle:

$content = apply_filters('the_content', $content);

Ce filtre exécute un certain nombre de fonctions de formatage, y compris l'analyse de codes courts. Quelque chose de proche de cela:

>>>>>   the_content
8   (object) WP_Embed -> run_shortcode (1) 
    (object) WP_Embed -> autoembed (1) 
10  wptexturize (1) 
    convert_smilies (1) 
    convert_chars (1) 
    wpautop (1) 
    shortcode_unautop (1) 
    prepend_attachment (1) 
11  capital_P_dangit (1) 
    do_shortcode (1) 
23
Rarst