Как получить отформатированное содержимое записи через WordPress API?

17 окт. 2010 г., 01:02:03
Просмотры: 23.2K
Голосов: 9

Я пробовал использовать

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

основываясь на этой документации.

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

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

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

0
Все ответы на вопрос 1
4
25

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

$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) 
17 окт. 2010 г. 01:20:53
Комментарии

Огромное спасибо. Я провел около часа, пытаясь найти это в Codex.

Joseph Joseph
17 окт. 2010 г. 01:23:30

@Joseph - Хотя многие в основном сообществе WordPress очень гордятся Codex, я тоже нахожу его чрезвычайно сложным в использовании для поиска чего-либо, если ты уже не знаешь, что именно ищешь. Слава богу за WordPress Answers!

MikeSchinkel MikeSchinkel
17 окт. 2010 г. 10:32:57

именно то, что я искал :)

Atif Atif
17 июн. 2011 г. 12:42:33

@MikeSchinkel В таких ситуациях я обычно выполняю текстовый поиск по локальной копии ядра... но Codex обычно подсказывает, по какому тексту искать ;-)

WraithKenny WraithKenny
2 мар. 2012 г. 19:35:36