Описание
Получает данные определенной записи из Базы Данных. Данные какой записи нужно получить, определяется передаваемым функции параметром $post. В каком виде данные будут возвращены определяется параметром $output (объект, массив).
get_post() используется в: wp_get_single_post(), get_post_type(), get_post_status(), get_post_mime_type(), get_post_ancestors().
Использование
<?php get_post( $post, $output ); ?>
Параметры
- $post (число) (обязательный)
- ID поста данные которого нужно получить. Параметр нужно передавать как переменную, т.е. если вписать число - это вызовет ошибку.
По умолчанию: нет - $output (строка)
- Флаг обозначающий в каком виде вернуть данные, может быть:
OBJECT - данные вернутся в виде объекта
ARRAY_A - данные вернутся в виде ассоциативного массива
ARRAY_N - данные вернутся в виде простого массива (без ключей)
По умолчанию: OBJECT
Примеры
Получаем данные поста с идентификатором 7 и получаем заголовок записи:
<?php $post_id_7 = get_post($my_id = 7); $title = $post_id_7->post_title; ?>
Получаем данные поста 7 в виде ассоциативного массива и "вытаскиваем" заголовок из массива:
<?php $post_id_7 = get_post($my_id = 7, ARRAY_A); $title = $post_id_7['post_title']; ?>
Важно правильно передавать ID поста в функцию:
<?php // Верно: передаем переменную, а не число $the_post = & get_post( $dummy_id = 7 ); // Неверно (вызовет ошибку): передаем число, а не переменную $the_post = & get_post( 7 ); ?>
Возвращаемые данные
- ID (число)
- Идентификатор записи.
- post_author (число)
- Идентификатор автора записи.
- post_date (строка)
- Дата записи в формате YYYY-MM-DD HH:MM:SS (с учетом исправления времени).
- post_date_gmt (строка)
- Дата записи в формате YYYY-MM-DD HH:MM:SS (время по Гринвичу (GMT)).
- post_content (строка)
- Текст записи.
- post_title (строка)
- Заголовок записи.
- post_excerpt (строка)
- Цитата записи.
- post_status (строка)
- Статут записи, может быть: publish|pending|draft|private|static|object|attachment|inherit|future|trash.
- comment_status (строка)
- Возможность комментирования для записи, может быть: open|closed|registered_only.
- ping_status (строка)
- Статус пингов/трэкбэков, может быть: open|closed.
- post_password (строка)
- Пароль записи.
- post_name (строка)
- Имя записи (слаг). Название которое обычно используется в УРЛ-е.
- to_ping (строка)
- УРЛ-ы из статьи, на которые нужно отправить уведомления при обновлении поста.
- pinged (строка)
- УРЛ-ы из статьи, которые уже получили уведомления.
- post_modified (строка)
- Дата изменения записи в формате YYYY-MM-DD HH:MM:SS (с учетом корректировки времени).
- post_modified_gmt (число/строка)
- Дата изменения записи в формате YYYY-MM-DD HH:MM:SS (время по Гринвичу (GMT)).
- post_parent (число)
- ID родительской страницы (отлично от нуля у прикрепленных типов записей).
- guid (строка)
- Ссылка на запись. Важно: использовать этот параметр в качестве постоянной ссылки для поста неправильно, если версия вашего WordPress выше 2.5. Это уникальный идентификатор записи, который позднее стал ссылкой на запись.
- menu_order (число)
- Порядковый номер для построения меню (используется для постоянных страниц).
- post_type (строка)
- Тип записи (post|page|attachment).
- post_mime_type (строка)
- Миме тип записи (jpg|png|zip|pdf и т.д.). Используется для прикрепленных записей.
- comment_count (число)
- Количество комментариев у записи.
На заметку
- Используется функцией: wp_get_post_revision()
- Используется функцией: post_preview()
- Использует: $wpdb
get_post()
из файла: /wp-includes/post.php WP 3.3.2function &get_post(&$post, $output = OBJECT, $filter = 'raw') {
global $wpdb;
$null = null;
if ( empty($post) ) {
if ( isset($GLOBALS['post']) )
$_post = & $GLOBALS['post'];
else
return $null;
} elseif ( is_object($post) && empty($post->filter) ) {
_get_post_ancestors($post);
$_post = sanitize_post($post, 'raw');
wp_cache_add($post->ID, $_post, 'posts');
} elseif ( is_object($post) && 'raw' == $post->filter ) {
$_post = $post;
} else {
if ( is_object($post) )
$post_id = $post->ID;
else
$post_id = $post;
$post_id = (int) $post_id;
if ( ! $_post = wp_cache_get($post_id, 'posts') ) {
$_post = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->posts WHERE ID = %d LIMIT 1", $post_id));
if ( ! $_post )
return $null;
_get_post_ancestors($_post);
$_post = sanitize_post($_post, 'raw');
wp_cache_add($_post->ID, $_post, 'posts');
}
}
if ($filter != 'raw')
$_post = sanitize_post($_post, $filter);
if ( $output == OBJECT ) {
return $_post;
} elseif ( $output == ARRAY_A ) {
$__post = get_object_vars($_post);
return $__post;
} elseif ( $output == ARRAY_N ) {
$__post = array_values(get_object_vars($_post));
return $__post;
} else {
return $_post;
}
}Связанные Функции
Ещё из раздела
Смотрите также: Функции WordPress и Теги Шаблона.
Чтобы выйти в интернет нужен провайдер предоставляющий услуги подобного рода и конечно браузер. Браузеры бывают удобные а бывают не очень. Все браузеры бесплатные, поэтому если вам предлагают заплатить за браузер, то следует насторожится. Удобный браузер — это выбранные из многих браузер, с которым вы проработали уже несколько месяцев и вас все в нем устраивает.