Поддержка Проблемы и решения Уменьшение времени генерации страниц

  • Здравствуйте, с увеличением объема записей столкнулся с проблемой. А именно со временем загрузки страниц сайта. Я уменьшил в несколько раз размер изображений, установил плагин WP Super Cache. Но все равно страницы загружаются долго, порядка 1-2 секунд (как написано из плагина), а на самом же деле 1-2 секунды в браузере белый фон, после чего моментально загружается страница. SQL запросов примерно 90-100, иногда и переваливает за 100. Подскажите что можно предпринять? Что происходит во время отображения белого фона, в те самые 1-2 секунды.. генерация страницы?

Просмотр 15 ответов — с 1 по 15 (всего 17)
  • Знакомая ситуация.
    Что я сделал чтобы ускорить загрузку страниц и это дало реальные результаты:
    1. Минимизировал файл CSS темы с помощью этого сервиса http://optimin.ru/code/
    2. В плагине WP Super Cache статические страницы и некоторые особенно важные записи и записи с большим к-вом фото и прочими «наворотами» добавил в прямое кэширование (Раздел «Прямое кэширование»)
    3. Уже давно добавил еще один плагин кеширования. Он довольно старый, но работает в WP 3.9. Плагин кеширует запросы к базе данных. Я весьма смутно представляю как именно это происходит, но факт есть факт — при отключении этого плагина сайт работает менее шустро. https://wordpress.org/plugins/db-cache-reloaded-fix/

    Кроме этого еще внимательно поковыряйтесь в настройках WP Super Cache, попробуйте разные варианты его настроек и посмотрите что из этого будет получаться.

    SQL запросов примерно 90-100

    Это многовато. Нужно уменьшать. Однако не настолько много, что бы так долго генерировать страницу. Тут или оч. медленная работа БД или ещё и скрипты тормозят.

    И ещё. Если эти цифры показаны после работы кеш-плагина это говорит о том, что плагин скорее всего не работает.

    Плагин работает, до работы плагина загрузка страницы была в сервисе проверки скорости загрузки 1-2 секунды, после 0.01-0.3 секунды. У меня особо наворотов никаких нет, у каждой записи описании порядка 1500-3000 символов, 6 картинок и встроенное видео с ютюб. Я не могу понять, почему страницы загружаются не сразу, а после белого фона, который висит в браузере порядка 1-2 секунды.

    У меня была такая проблема. Решилась удалением всех плагинов связанных с кэшированием, в том числе и WP Super Cache. Не знаю как у других, но у меня именно эти плагины конфликтовали и делали сбой, порой даже админку открываешь, а там белый фон и всё. И страницы стали очень долго генерироваться. Просил помощи, тут на форуме. К сожалению ответа не получил, но решил проблему самостоятельно. Вместо них установил WP Fastest Cache. Все проблемы исчезли, да и работать с плагином одно удовольствие! Есть русский язык и куча настроек. Попробуйте, может вам то же поможет. Удачи!

    Вместо них установил WP Fastest Cache

    Пробовал его как альтернативуWP Super Cache когда изучал кэширующие плагины. Сначала он произвел очень приятное впечатление — на русском. Настройки не сложны и вроде бы сразу заработал. Но вскоре я его удалил. Так как заметил что он не всегда сбрасывает кэш при добавлении новой записи или обновлении имеющейся. Была и другая проблема — почему то после входа на сайт вновь предлагалось войти в него… Проблема решалась перезагрузкой страницы после входа, но всё равно это не есть хорошо… Но вообще плагин хороший. Может это у меня руки кривые….

    Но WP Super Cache — это вешь! Одна его функция прямого кэширования чего стоит! Я раньше ей почему то не пользовался, но попробовав убедился, что кэшированные таким образом статические страницы и записи открываются МГНОВЕННО. Правда тогда чуть-чуть отстают виджеты.

    Поясните пожалуйста, как работает прямое кэширование? Если к примеру закэшировать все страницы таким способом, то будут ли они обновляться, если редактировать запись?

    Поясните пожалуйста, как работает прямое кэширование?…будут ли они обновляться, если редактировать запись?

    Настройки прямого кеширования есть в плагине WP Super Cache только в том случае, если использовать режим кэширования Использовать mod_rewrite для обслуживания кэша.

    При включении этого режима производятся основные настройки. Потом производится «обновление правил mod_rewrite и в низу страницы настроек вы увидите раздел «Прямое кэширование». Добавьте в пустрые строки URL страниц или записей, которые надо кэшировать «напрямую» и нажмите кнопку «отправить»

    Единственный недостаток этого метода — то, что страница или запись не обновится после её редактирования. Вернее она обновится, но изменения не будут видны до тех пор, пока вы вручную не сбросите кэш этой страницы\записи в настройках «прямого кэширования». Зато выигрыш в скорости открытия страницы\записи — колоссальный!

    Впрочем зачем я всё это объясняю?! В настройках плагина все это написано!

    Данный кэш создается прямо из папки, где находится Ваш блог (папка /home/ваш хост/адрес сайта/htdocs/www/). Эта опция полезна только тогда, когда ожидается большой приток посетителей с более популярного ресурса на конкретную страницу или запись Вашего сайта.

    Например: чтобы добавить в кэш страницу /about/, нужно прописать http://адрес сайта/about/ или /about/. Кэш для страницы будет создан сразу же после первого к ней обращения гостем.

    Чтобы удалить страницу из такого кэша, очистите текстовое поле или удалите файлы кэша.

    Если к примеру закэшировать все страницы таким способом

    Можно. Но для этого придется вручную вводить URL каждой страницы или записи.
    Лично меня такая перспектива, на одном из сайтов, где уже более 1000 записей такая задача не очень вдохновляет :))))

    Вопрос к г-ну SeVlad

    SQL запросов примерно 90-100, иногда и переваливает за 100

    Это многовато. Нужно уменьшать

    Как?

    Мне тоже интересно как. Я читал статьи, но там всего ссылок 5-10 нужно заменить на статичные, да и какой смысл это делать, если плагин сам статичные страницы создает, но почему то кол-во запросов от этого не меньше?

    Модератор Yuri

    (@yube)

    но почему то кол-во запросов от этого не меньше?

    А где Вы смотрите? В сохраненной статической копии страницы?

    Нет, я отключал генерацию страниц для известных пользователей, а потом смотрел.

    <!— Dynamic page generated in 1.259 seconds. —>
    <!— Cached page generated by WP-Super-Cache on 2014-04-30 21:30:59 —>

    Как?

    Если в лоб, то так как Вы делаете — кешированием 🙂 (но нужно помнить, что это палка о двух концах).
    Иначе — искать кто (какой скрипт\плагин) делает лишние запросы и исправлять.

    Я, правда, давно занимался анализом кол-ва запросов ВП, но ИМХО: без излишнего фанатизма погружения в код, а только правильно подбирая плаги и темы и их настройки вполне можно иметь не более 60-70 запросов к БД на «среднестатистичном» ВП-сайте.

    Нет, я отключал генерацию страниц для известных пользователей, а потом смотрел.

    Ну и? Отключили кеш-плаг и смотрите на результат..
    Смотрите после работы плагина.

    Возможно это связано с хостинг провайдером.. т.к. то генерация идет за 2 секунды, то за 4 секунды. Я попробую максимально заменить php на простой html. Вот кстати страница с темой, как у меня.. грузится довольно быстро (ссылка). С плагином, который на данном сайте стоит я не разобрался с 1 раза.. и сразу поставил hyper cache. Но все же не понятно.. то ли на этом сайте тема устаревшая.. просто даже здесь страница загружается по другому.. сразу открывается нужная страница, а затем идет загрузка. У меня же открывается белый фон, а затем целиком загруженная страница! >_<

    Хотел вместо виджета использовать полностью HTML. Но все же нужны данные из БД, а именно кол-во комментариев и кол-во просмотров. Пробовал сделать так.. но ничего не вышло.. я баран.. Поправьте код пожалуйста.. не могу понять как мне сделать все статичное, а комментарии и просмотры из БД.

    Код исходника

    <?php
    /**
     * Plugin Name: Рейтинговый Виджет
     */
    
    add_action( 'widgets_init', 'lp_rating_load_widgets' );
    
    function lp_rating_load_widgets() {
    	register_widget( 'LP_Rating_Widget' );
    }
    
    class LP_Rating_Widget extends WP_Widget {
    
    	/**
    	 * Widget setup.
    	 */
    	function LP_Rating_Widget() {
    		/* Widget settings. */
    		$widget_ops = array( 'classname' => 'lp_rating_widget', 'description' => __('Виджет, который отображает топ игр', 'lp_rating_widget') );
    
    		/* Widget control settings. */
    		$control_ops = array( 'width' => 250, 'height' => 350, 'id_base' => 'lp_rating_widget' );
    
    		/* Create the widget. */
    		$this->WP_Widget( 'lp_rating_widget', __('HardGames: Высокий Рейтинг Игр', 'lp_rating_widget'), $widget_ops, $control_ops );
    	}
    
    	/**
    	 * How to display the widget on the screen.
    	 */
    	function widget( $args, $instance ) {
    		extract( $args );
    
    		/* Our variables from the widget settings. */
    		$title = apply_filters('widget_title', $instance['title'] );
    		$number = $instance['number'];
    
    		$query = array('showposts' => $number, 'nopaging' => 0, 'post_status' => 'publish', 'post_type' => 'reviews', 'meta_key' => 'leetpress_overallscore', 'orderby' => 'meta_value_num', 'order' => 'DESC');
    		$loop = new WP_Query($query);
    		if ($loop->have_posts()) :
    
    		/* Before widget (defined by themes). */
    		echo $before_widget;
    
    		/* Display the widget title if one was input (before and after defined by themes). */
    		if ( $title )
    			echo $before_title . $title . $after_title;
    
    		?>
    
    			<?php  while ($loop->have_posts()) : $loop->the_post(); ?>
    
    			<div class="side-item">
    
    				<?php if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())  ) { ?><a href="<?php echo get_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_post_thumbnail('review-thumb-small', array('class' => 'side-item-thumb')); ?></a><?php } ?>
    				<h4 class="side-review-heading"><a href="<?php echo get_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h4>
    				<span class="side-item-cat"><?php echo get_the_term_list( $post->ID, 'review_category', '',', ' ) ?></span>
    				<span class="side-item-meta">Просмотров: <?php echo getPostViews(get_the_ID()); ?> | <?php comments_popup_link(__('0 Комментариев'), __('1 Комментарий'), __('Комментариев: %')); ?></span>
    				<div class="side-score <?php $send_rate = get_post_meta(get_the_id(), "leetpress_overallscore", true); rating_color($send_rate); ?>"><?php echo get_post_meta(get_the_id(), "leetpress_overallscore", true); ?></div>
    
    			</div>
    
    			<?php endwhile; ?>
    			<?php wp_reset_query(); ?>
    			<?php endif; ?>
    
    		<?php
    
    		/* After widget (defined by themes). */
    		echo $after_widget;
    	}
    
    	/**
    	 * Update the widget settings.
    	 */
    	function update( $new_instance, $old_instance ) {
    		$instance = $old_instance;
    
    		/* Strip tags for title and name to remove HTML (important for text inputs). */
    		$instance['title'] = strip_tags( $new_instance['title'] );
    		$instance['number'] = strip_tags( $new_instance['number'] );
    
    		return $instance;
    	}
    
    	function form( $instance ) {
    
    		/* Set up some default widget settings. */
    		$defaults = array( 'title' => __('Лидеры рейтинга игр'), 'number' => __('5'));
    		$instance = wp_parse_args( (array) $instance, $defaults ); ?>
    
    		<!-- Widget Title: Text Input -->
    		<p>
    			<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e('Заголовок:', 'hybrid'); ?></label>
    			<input id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" style="width:90%;" />
    		</p>
    
    		<!-- Number of posts -->
    		<p>
    			<label for="<?php echo $this->get_field_id( 'number' ); ?>"><?php _e('Количество отображаемых игр:'); ?></label>
    			<input id="<?php echo $this->get_field_id( 'number' ); ?>" name="<?php echo $this->get_field_name( 'number' ); ?>" value="<?php echo $instance['number']; ?>" size="3" />
    		</p>
    
    	<?php
    	}
    }
    
    ?>

    Мой кривой код

    <?php
    /**
     * Plugin Name: Рейтинговый Виджет
     */
    
    add_action( 'widgets_init', 'lp_rating_load_widgets' );
    
    function lp_rating_load_widgets() {
    	register_widget( 'LP_Rating_Widget' );
    }
    
    class LP_Rating_Widget extends WP_Widget {
    
    	/**
    	 * Widget setup.
    	 */
    	function LP_Rating_Widget() {
    		/* Widget settings. */
    		$widget_ops = array( 'classname' => 'lp_rating_widget', 'description' => __('Виджет, который отображает топ игр', 'lp_rating_widget') );
    
    		/* Widget control settings. */
    		$control_ops = array( 'width' => 250, 'height' => 350, 'id_base' => 'lp_rating_widget' );
    
    		/* Create the widget. */
    		$this->WP_Widget( 'lp_rating_widget', __('Топ Игр', 'lp_rating_widget'), $widget_ops, $control_ops );
    	}
    
    	/**
    	 * How to display the widget on the screen.
    	 */
    	function widget( $args, $instance ) {
    		extract( $args );
    
    		/* Our variables from the widget settings. */
    		$title = apply_filters('widget_title', $instance['title'] );
    		$number = $instance['number'];
    
    		$query = array('showposts' => $number, 'nopaging' => 0, 'post_status' => 'publish', 'post_type' => 'reviews', 'meta_key' => 'leetpress_overallscore', 'orderby' => 'meta_value_num', 'order' => 'DESC');
    		$loop = new WP_Query($query);
    		if ($loop->have_posts()) :
    
    		/* Before widget (defined by themes). */
    		echo $before_widget;
    
    		/* Display the widget title if one was input (before and after defined by themes). */
    		if ( $title )
    			echo $before_title . $title . $after_title;
    
    		?>
    
    			<?php  while ($loop->have_posts()) : $loop->the_post(); ?>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/prime-world" rel="bookmark" title="Prime World"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/pw-42x60.jpg" class="side-item-thumb wp-post-image" alt="pw" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/prime-world" rel="bookmark" title="Prime World">Prime World</a></h4>
    				<span class="button-play-top"><a href="http://cityadspix.com/click-EQBBLUM0-PNLJQOPV" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/mmorpg" rel="tag">MMORPG</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/strategii" rel="tag">Стратегии</a></span>
    				<span class="side-item-meta">Просмотров:  102 | <a href="http://hardgames.esy.es/game/prime-world#respond" title="Прокомментировать игру Prime World">0 Комментариев</a></span>
    				<div class="side-score green">10</div>
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/anno-online" rel="bookmark" title="Anno Online"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/anno-42x60.jpg" class="side-item-thumb wp-post-image" alt="anno" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/anno-online" rel="bookmark" title="Anno Online">Anno Online</a></h4>
    				<span class="button-play-top"><a href="http://ad.admitad.com/goto/fdba1af53371977d8b77e0fbcdf1d1/" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/browser" rel="tag">Браузерные</a>, <a href="http://hardgames.esy.es/games/strategii" rel="tag">Стратегии</a></span>
    				<span class="side-item-meta">Просмотров:  77 | <a href="http://hardgames.esy.es/game/anno-online#respond" title="Прокомментировать игру Anno Online">0 Комментариев</a></span>
    				<div class="side-score green">9.9</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/war-thunder" rel="bookmark" title="War Thunder"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/wt-42x60.jpg" class="side-item-thumb wp-post-image" alt="wt" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/war-thunder" rel="bookmark" title="War Thunder">War Thunder</a></h4>
    				<span class="button-play-top"><a href="http://cityadspix.com/click-FQBBLUNA-MKIGQLFP" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/voennyie" rel="tag">Военные</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/morskie" rel="tag">Морские</a>, <a href="http://hardgames.esy.es/games/simulyatory" rel="tag">Симуляторы</a></span>
    				<span class="side-item-meta">Просмотров:  216 | <a href="http://hardgames.esy.es/game/war-thunder#comments" title="Прокомментировать игру War Thunder">1 Комментарий</a></span>
    				<div class="side-score green">9.8</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/star-conflict" rel="bookmark" title="Star Conflict"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/sc-42x60.jpg" class="side-item-thumb wp-post-image" alt="sc" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/star-conflict" rel="bookmark" title="Star Conflict">Star Conflict</a></h4>
    				<span class="button-play-top"><a href="http://cityadspix.com/click-KHQ5VRV0-SLZKVXTQ" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/kosmicheskie" rel="tag">Космические</a>, <a href="http://hardgames.esy.es/games/simulyatory" rel="tag">Симуляторы</a></span>
    				<span class="side-item-meta">Просмотров:  71 | <a href="http://hardgames.esy.es/game/star-conflict#respond" title="Прокомментировать игру Star Conflict">0 Комментариев</a></span>
    				<div class="side-score green">9.7</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/dark-age" rel="bookmark" title="Dark Age"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/da-42x60.jpg" class="side-item-thumb wp-post-image" alt="da" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/dark-age" rel="bookmark" title="Dark Age">Dark Age</a></h4>
    				<span class="button-play-top"><a href="http://cityadspix.com/click-CQBBXL6P-NKHEQSAV" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/mmorpg" rel="tag">MMORPG</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/fantasy" rel="tag">Фэнтези</a></span>
    				<span class="side-item-meta">Просмотров:  111 | <a href="http://hardgames.esy.es/game/dark-age#respond" title="Прокомментировать игру Dark Age">0 Комментариев</a></span>
    				<div class="side-score green">9.6</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/panzar-forged-by-shaos" rel="bookmark" title="Panzar: Forged by Сhaos"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/pa-42x60.jpg" class="side-item-thumb wp-post-image" alt="pa" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/panzar-forged-by-shaos" rel="bookmark" title="Panzar: Forged by Сhaos">Panzar: Forged by Сhaos</a></h4>
    				<span class="button-play-top"><a href="http://ad.admitad.com/goto/78e4ddea7071977d8b77b6e1cc6b09/" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/rpg" rel="tag">RPG</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a></span>
    				<span class="side-item-meta">Просмотров:  66 | <a href="http://hardgames.esy.es/game/panzar-forged-by-shaos#respond" title="Прокомментировать игру Panzar: Forged by Сhaos">0 Комментариев</a></span>
    				<div class="side-score green">9.5</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/karos-online" rel="bookmark" title="Karos Online"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/ko-42x60.jpg" class="side-item-thumb wp-post-image" alt="ko" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/karos-online" rel="bookmark" title="Karos Online">Karos Online</a></h4>
    				<span class="button-play-top"><a href="http://cityadspix.com/click-IGQ5VRJA-OKGCQLZK" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/mmorpg" rel="tag">MMORPG</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/fantasy" rel="tag">Фэнтези</a></span>
    				<span class="side-item-meta">Просмотров:  78 | <a href="http://hardgames.esy.es/game/karos-online#respond" title="Прокомментировать игру Karos Online">0 Комментариев</a></span>
    				<div class="side-score green">9.4</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/blood-and-soul" rel="bookmark" title="Blood and Soul"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/bas-42x60.jpg" class="side-item-thumb wp-post-image" alt="bas" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/blood-and-soul" rel="bookmark" title="Blood and Soul">Blood and Soul</a></h4>
    				<span class="button-play-top"><a href="http://ad.admitad.com/goto/5fe0f000ed71977d8b77baff29a610/" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/rpg" rel="tag">RPG</a>, <a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/fantasy" rel="tag">Фэнтези</a></span>
    				<span class="side-item-meta">Просмотров:  101 | <a href="http://hardgames.esy.es/game/blood-and-soul#respond" title="Прокомментировать игру Blood and Soul">0 Комментариев</a></span>
    				<div class="side-score green">9.3</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/stronghold-kingdoms" rel="bookmark" title="Stronghold Kingdoms"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/sk-42x60.jpg" class="side-item-thumb wp-post-image" alt="sk" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/stronghold-kingdoms" rel="bookmark" title="Stronghold Kingdoms">Stronghold Kingdoms</a></h4>
    				<span class="button-play-top"><a href="http://ucl.mixmarket.biz/r/1294962378/" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/client" rel="tag">Клиентские</a>, <a href="http://hardgames.esy.es/games/strategii" rel="tag">Стратегии</a></span>
    				<span class="side-item-meta">Просмотров: <?php echo getPostViews(get_the_ID()); ?> | <?php comments_popup_link(__('0 Комментариев'), __('1 Комментарий'), __('Комментариев: %')); ?></span>
    				<div class="side-score green">9.2</div>
    
    			</div>
    
    			<div class="side-item">
    
    				<a href="http://hardgames.esy.es/game/drakensang-online" rel="bookmark" title="Drakensang Online"><img width="42" height="60" src="http://hardgames.esy.es/wp-content/uploads/dro-42x60.jpg" class="side-item-thumb wp-post-image" alt="dro" /></a>				<h4 class="side-review-heading"><a href="http://hardgames.esy.es/game/drakensang-online" rel="bookmark" title="Drakensang Online">Drakensang Online</a></h4>
    				<span class="button-play-top"><a href="http://track.lead-r.ru/click/15" target="_blank" rel="nofollow" >Играть</a></span>
    				<span class="side-item-cat"><a href="http://hardgames.esy.es/games/mmorpg" rel="tag">MMORPG</a>, <a href="http://hardgames.esy.es/games/browser" rel="tag">Браузерные</a>, <a href="http://hardgames.esy.es/games/fantasy" rel="tag">Фэнтези</a></span>
    				<span class="side-item-meta">Просмотров: <?php echo getPostViews(get_the_ID()); ?> | <?php comments_popup_link(__('0 Комментариев'), __('1 Комментарий'), __('Комментариев: %')); ?></span>
    				<div class="side-score green">9.1</div>
    
    			</div>
    
    			<?php endwhile; ?>
    			<?php wp_reset_query(); ?>
    			<?php endif; ?>
    
    		<?php
    
    		/* After widget (defined by themes). */
    		echo $after_widget;
    	}
    
    	/**
    	 * Update the widget settings.
    	 */
    	function update( $new_instance, $old_instance ) {
    		$instance = $old_instance;
    
    		/* Strip tags for title and name to remove HTML (important for text inputs). */
    		$instance['title'] = strip_tags( $new_instance['title'] );
    		$instance['number'] = strip_tags( $new_instance['number'] );
    
    		return $instance;
    	}
    
    	function form( $instance ) {
    
    		/* Set up some default widget settings. */
    		$defaults = array( 'title' => __('Лидеры рейтинга игр'), 'number' => __('5'));
    		$instance = wp_parse_args( (array) $instance, $defaults ); ?>
    
    		<!-- Widget Title: Text Input -->
    		<p>
    			<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e('Заголовок:', 'hybrid'); ?></label>
    			<input id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" style="width:90%;" />
    		</p>
    
    		<!-- Number of posts -->
    		<p>
    			<label for="<?php echo $this->get_field_id( 'number' ); ?>"><?php _e('Количество отображаемых игр:'); ?></label>
    			<input id="<?php echo $this->get_field_id( 'number' ); ?>" name="<?php echo $this->get_field_name( 'number' ); ?>" value="<?php echo $instance['number']; ?>" size="3" />
    		</p>
    
    	<?php
    	}
    }
    
    ?>

    Без этого виджета кол-во запросов к БД падает со 100 до 67!

Просмотр 15 ответов — с 1 по 15 (всего 17)
  • Тема «Уменьшение времени генерации страниц» закрыта для новых ответов.