Как получить посты с помощью wpdb?
Решено
Скажите как можно получить посты не используя wp_query? Есть ли какие нибудь альтернативные способы кроме get_post? Я слышал что можно получать данные напрямую из базы, и для это существуют специальные функции в вордпресс. Если я правильно понимаю то работать нужно с wpdb. Можете привести пример запроса в базу данных wp для получения простых постов(записей)?
1 Ответ(ы)
Ответ
Пример запроса для получения постов:
$querystr = " SELECT $wpdb->posts.* FROM $wpdb->posts, $wpdb->postmeta WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id AND $wpdb->postmeta.meta_key = 'tag' AND $wpdb->postmeta.meta_value = 'email' AND $wpdb->posts.post_status = 'publish' AND $wpdb->posts.post_type = 'post' AND $wpdb->posts.post_date < NOW() ORDER BY $wpdb->posts.post_date DESC "; $pageposts = $wpdb->get_results($querystr, OBJECT);
В данном примере мы получим записи содержащие произвольное поле tag с ключем email, находящиеся в статусе «опубликовано», и отсортированы по дате.
Более подробно смотрите в кодексе: Displaying Posts Using a Custom Select Query