Intereting Posts
Как я могу получить все пользовательские параметры? Проверьте, есть ли страница подстраниц Плагины для «редакторов» Программный выбор темы по URL-адресу Должны ли мы использовать get_template_part () в файлах функций вместо include_once? Получение «Ошибка установления соединения с базой данных» на локальном хосте в новой среде Mac OSX Lion Я хочу показать свое сообщение в течение ограниченного времени, как это возможно? Есть ли способ восстановить постоянную ссылку страницы без плагина? Как очистить переходные процессы на всех сайтах в среде Multi Sites Отображение прикрепленного сообщения в зависимости от заголовка Как получить ссылку на WordPress, чтобы полностью оценить, когда она поступает из facebook Использование WordPress Media Library и возврат идентификатора вложения, а не URL-адреса? Захватите последнюю часть правила URL внутри Как отключить миниатюрный фильтр для определенной части шаблона или размера изображения? Используйте плагин Cornerstone вне панели WordPress

Получите разметку для сообщения без загрузки в шаблон

Я пишу плагин Shortcode, который отображает сообщения по некоторым параметрам, переданным в короткий код. У меня есть wp_query чтобы получить сообщения, и теперь я пытаюсь получить разметку для сообщений в соответствии с файлами шаблонов темы.

По сути, get_template_part – это именно то, что я хочу … кроме того, что он напрямую загружает разметку в шаблон. Я хочу получить разметку для контента, выполнить небольшую постобработку и затем вернуть разметку для короткого кода. По существу,

 $listings = new WP_Query(...); while ( have_posts() ) { $markup .= get_template_part('content', $post->post_type); } return $markup 

Кроме того, это явно не так, get_template_part работает get_template_part . Как получить разметку для сообщения без рендеринга разметки на странице?

Solutions Collecting From Web of "Получите разметку для сообщения без загрузки в шаблон"

Я не мог понять способ WordPress для этого и посмотреть на источник WP, похоже, что это, вероятно, никогда не будет возможным. Тем не менее, я смог получить решение с использованием ванильного PHP путем перенаправления стандартного вывода в буфер и загрузки буфера в переменную.

 $listings = new WP_Query(...); ob_start(); while ( have_posts() ) { get_template_part('content', $post->post_type); } $markup = ob_get_contents(); ob_end_clean(); return $markup 

Если вы ищете только контент из сообщения, прежде чем он загрузится в шаблон, вы, вероятно, ищете get_the_content() .