Как вы получаете отформатированный контент поста, используя WordPress API?

8

Я пытался с помощью

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

на основании документации здесь .

Статья, которую я пытаюсь найти, содержит краткий код, который подбирается плагином на моем сайте, а затем форматируется в HTML.

Проблема в том, что когда я выводю post_content на сайт, плагин не воспринимает короткий код, и я просто записываю короткий код прямо в браузер.

Есть ли способ правильно оценить короткий код? Или я использую не ту функцию?

Джозеф
источник

Ответы:

23

Поле объекта сообщения содержит необработанный контент, поскольку он хранится в базе данных. Это должно отформатировать его так, как оно выглядит при получении с тегами шаблона:

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

Этот фильтр запускает ряд функций форматирования, включая разбор коротких кодов. Нечто близкое к этому:

>>>>>   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) 
Rarst
источник
Спасибо вам большое. Я искал кодекс около часа.
Джозеф
@Joseph - Хотя многие в основном сообществе WordPress очень гордятся Кодексом, мне тоже очень сложно найти что-то в нем, если вы уже не знаете, что ищете. Слава Богу за ответы на WordPress!
MikeSchinkel
именно то, что я искал :)
Атиф Мухаммед Амеенуддин
@MikeSchinkel Я склонен выполнять текстовый поиск по локальной копии ядра, когда я нахожусь в такой ситуации ... но кодекс обычно подсказывает мне, какой текст выполнять поиск ;-)
WraithKenny