Стоит ли экономить на спичках?

WordPress: Стоит ли экономить на спичках?Сегодня мне наконец-то посчастливилось найти концы (в смысле, оригинал) статьи, которую публикуют многие блоггеры (в переводе на родной язык). Статья носит название «13 Тэгов, которые следует удалить из вашей темы» (с ней можно ознакомиться, например, здесь).

В переводе меня смутило то, что автор, на мой взгляд, «экономил на спичках», вместо того, чтобы использовать что-либо стоящее, поэтому я решил обратиться к оригиналу, в надежде на то, что автор хоть как-нибудь обосновал свою точку зрения.

Приведу эти «тринадцать вещей», чтобы было понятно, о чем я говорю.

1. <?php language_attributes(); ?> находится в header.php.
2. <?php bloginfo(‘html_type’); ?> находится в header.php.
3. <?php bloginfo(‘charset’); ?> находится в header.php.
4. <?php bloginfo(‘name’); ?> встречается в теме постоянно.
5. <meta name=»generator» content=»WordPress <?php bloginfo(‘version’); ?>» /> <!— leave this for stats —> находится в header.php.
6. <?php bloginfo(‘stylesheet_url’); ?> находится в header.php.
7. <?php bloginfo(‘rss2_url’); ?> находится в header.php, sidebar.php и footer.php. Будьте осторожны, если у вас включен FeedBurner. Не забывайте обновлять адреса фидов вручную (плагин FeedSmith не сделает этого).
8. <?php bloginfo(‘pingback_url’); ?> находится в header.php.
9. <?php bloginfo(‘stylesheet_directory’); ?> встречается в теме постоянно.
10. <?php bloginfo(‘description’); ?> встречается в теме постоянно. Описание вашего сайта.
11. <?php bloginfo(‘comments_rss2_url’); ?> находится в sidebar.php и footer.php.
12. <!— <?php echo get_num_queries(); ?> queries. <?php timer_stop(1); ?> seconds. —> находится в footer.php. Этот HTML-комментарий многими из нас не используется, так что удаляйте!
13. Если вы используете виджеты, то можете удалить код из sidebar.php между строчками<?php /* Widgetized sidebar, if you have the plugin installed. */
if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar() ) : ?> и <?php endif; ?>.
Контент между двумя этими строчками используется только тогда, когда виджеты отключены. Если Вы уверены, что будете продолжать использовать виджеты, то можно выделить это как неиспользуемый код, а к строке можно оставить комментарий «Этот контент используется, если отключены виджеты», чтобы не забыть о назначении этого куска кода).

Как утверждает сам автор, …the theme uses PHP tags to get the information. However, it has to use these tags every time a page is loaded. As most of the information never changes, you can delete these tags from your theme, and replace them with normal text. That way, your server has less to process next time around.

Конечно, в логике отказать автору трудно: если заменить вызовы функций их результатом, то интерпретатору не придется вызывать эти функции, на чем, собственно, и происходит экономия. Однако, как показали замеры, выигрыш ничтожен — сотые доли секунды (в среднем; при этом я тестировал на довольно слабом компьютере). Конечно, если блог посещает несколько сотен посетителей в секунду, то даже эти милисекунды могут хоть немного помочь. Но для среднестатистического блога такие оптимизации что слону дробина.

Пункты 12 и 13 что есть, что нет — лично я не смог заметить изменений.
Пункт 5 — это, наверное, в целях безопасности. Хочу огорчить: версию WordPress можно установить косвенно (хоть это и труднее).

Вызовы blog_info() и get_feed_link() сводятся (в конечном итоге) к get_option(). А get_option() достает требуемые значения из кэша — запрос к базе данных не производится.

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

Вообще, если не экономить на спичках, лучших результатов можно достигнуть, использую специальные плагины — Super Cache, Hyper Cache и подобные им. Вряд ли кто будет спорить, что статическая страница отдается быстрее, нежели динамическая при прочих равных условиях ;-)

Не экономьте на спичках!

h++p://blog.sjinks.org.ua/wordpress/188-re-13-tags-to-delete-from-your-theme/

Оставьте первый комментарий

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*


семнадцать + 10 =