Вручную установите глобальные переменные $ post с идентификатором, чтобы использовать теги шаблона


19

У меня есть функция получения идентификаторов сообщений с помощью специальных средств.

Мне нужно иметь возможность установить для global $postтого, чтобы использовать такие функции, как the_content(), который не позволяет идентификатор в качестве параметра.

Как мне этого добиться?


1
Что именно вы имеете в виду под «установить глобальный пост $»? Не могли бы вы а) опубликовать функцию получения идентификаторов и проиллюстрировать / сделать эскиз к вашему варианту использования?
Кайзер

Ответы:


27

Когда вы проходите через ваш цикл, добавьте это:

global $post; 
$post = get_post( $ID, OBJECT );
setup_postdata( $post );

//Do something

wp_reset_postdata();

3

Для работы с сообщениями вне цикла попробуйте использовать:

get_post(post_id)

чтобы получить сообщение с определенным идентификатором из цикла , при этом глобальный объект $ post будет содержать сообщение, которое вы только что выбрали. Теперь вы можете получить содержимое, используя:

$post->post_content ,

проверьте документацию get_post на Wordpress Codex

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.