WordPress как на ладони

ID всех записей без изображений через sql запрос

Нужно получить список ID записей без изображений (миниатюр) поста. На сайте десятки тысяч записей.

Подскажите как через sql запрос можно сделать?

Спасибо.

0
Константин
3 года назад
  • 1
    SELECT SQL_CALC_FOUND_ROWS  $wpdb->posts.ID FROM $wpdb->posts  
    LEFT JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id AND $wpdb->postmeta.meta_key = '_thumbnail_id' ) 
    WHERE 1=1  AND ( 
      $wpdb->postmeta.post_id IS NULL
    ) AND $wpdb->posts.post_type = 'post' AND ($wpdb->posts.post_status = 'publish') 
    GROUP BY $wpdb->posts.ID ORDER BY $wpdb->posts.post_date

    как-то так.

    Небольшой лайфхак по составлению SQL запроса к базе WordPress - сделайте запрос к классу WP_Query с нужными критериями и потом посмотрите свойство $request полученного объекта. Полный SQL запрос содержится в нём.

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация