Intereting Posts
wp_nav_menu возвращает false, даже если ему назначено меню Запуск текста песни в WordPress Синхронизация содержимого сайтов WordPress Могу ли я запретить пользователям WP (даже администраторам) удалять специальные категории? Add_Meta_box на пользовательскую страницу (грозное сообщение редактирования) Тема Активировать крючок Фотографии, автоматически загруженные в медиа-библиотеку Архивная страница … ограничение постов на страницу 1-битный аудиоплеер Префикс с измененным размером изображения загружает перерывы, созданные в редакторе изображений Как динамически прикреплять изображения к карусели Скрыть элемент меню и его подменю и отобразить ссылку «Войти», если пользователь вышел из системы Как показать сообщение для определенного срока пользовательской таксономии? Как отобразить фоновое изображение в области тела страницы? Как увеличить ограничение размера файла для загрузки мультимедиа?

Вложенные страницы по идентификатору не соответствуют частному и статусу проекта

У вас есть проблема, когда у меня есть серия страниц, загруженных в индекс веб-сайтов, используя приведенный ниже код:

<?php $id = 1767; $p = get_page($id); echo apply_filters('the_content', $p->post_content); ?> 

Но информация с этих страниц не касается статуса Private и Draft. Обычно со мной все в порядке. Но пара из них – либо для меня запланированных обновлений. Но независимо от того, какой статус страницы является видимым для незашифрованного в читателе страницы во всех браузерах, которые я пробовал.

Я кое-что прочитал о коде page_status но я слишком много неспециалиста, чтобы понять, как заставить его работать.

Помощь и советы приветствуются. благодаря

Хорошо спасибо Пиюшу Равату. Я реализовал следующее. Насколько я могу судить, работает правильно.

 <?php $id = 2841; $p = get_page($id); if ( get_post_status ( $id ) == 'publish' ) { echo apply_filters('the_content', $p->post_content); } ?> 

Вы можете использовать get_page (), чтобы получить текущий статус и сделать что-то на основе его вывода.

  $id = YOUR_ID; $p = get_page($id); $status = $p->post_status; if($status == 'publish'){ //Do something } 

Плохая идея – жестко указать идентификатор страницы на сайт, который позже вас укусит.

Вы можете использовать функцию get_pages для извлечения страниц. Он будет автоматически по умолчанию запрашивать статус сообщения «публиковать». Если вам действительно нужно, вы можете предоставить кучу идентификаторов страниц, используя параметр include.