Из 21 запроса к БД сделать 1
-
Здравствуйте!
Поскольку очень поверхностно знаком с mysql, прошу помочь в построении запроса. Суть: вывести по одному последнему посту (а вернее — название рубрики, время, миниатюру, заголовок с сылкой) из 20 категорий. Сейчас у меня работает такой код:function posts_regions () { $all_cats_ids = array(2171,2172,2173,2174,2175,2176,2177,2178,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612); $idp = array(); for ($o = 0; $o < count($all_cats_ids); $o++) { $args = array( 'numberposts' => 1 ,'category' => $all_cats_ids[$o] ,'post_status' => 'publish' ); $result = wp_get_recent_posts($args); $idp[] = $result[0]['ID']; } query_posts(array('post__in' => $idp, 'ignore_sticky_posts' => 1, 'posts_per_page' => 21)); if( have_posts() ){ while( have_posts() ){ //... } wp_reset_query(); } else { echo 'Произошла ошибка! Приносим свои извинения...'; } }
Подозреваю, что здесь происходит много запросов к БД 😉 Поскольку размер БД уже сейчас более 100 МБ, то на выделенный сервер ложится непомерная нагрузка… Помогите построить запрос к БД!
Просмотр 2 ответов — с 1 по 2 (всего 2)
Просмотр 2 ответов — с 1 по 2 (всего 2)
- Тема «Из 21 запроса к БД сделать 1» закрыта для новых ответов.