Как получить посты с помощью wpdb?

Решено

Скажите как можно получить посты не используя wp_query? Есть ли какие нибудь альтернативные способы кроме get_post? Я слышал что можно получать данные напрямую из базы, и для это существуют специальные функции в вордпресс. Если я правильно понимаю то работать нужно с wpdb. Можете привести пример запроса в базу данных wp для получения простых постов(записей)?

Добавить Комментарий
    Ответ

    Пример запроса для получения постов:

     $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

    Добавить Комментарий

    Ваш ответ

    Размещая свой ответ, вы соглашаетесь с правилами сайта.