Позбавляємося зайвих звернень до даних

ВАЖЛИВО!

Статтю писав давно та ще погано розумів деякі моменти. Все, що написано в цій статті працює, але все це дрібниці і не варто цим займатися.

Не треба реалізовувати поради із цієї статті!

Просто ознайомтеся, можливо з’являться якісь свої ідеї щодо оптимізації.

1. Позбавляємося зайвих звернень до даних

Усюди, де є можливість замінити динамічні дані на статичні, їх потрібно замінити. Наприклад, замінюємо:

<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

на

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

За аналогією бажано замінити все: <?php language_attributes(); ?> , <?php bloginfo(‘rss2_url’); ?> і т.д. і т.п.

Там де викликана змінна зустрічається кілька разів , бажано викликати її один раз. Швидше, це можна віднести до <?php bloginfo(‘template_url’); ?> . Для наочності наведу код.
Такий запис:

...
<script type="text/javascript" src="<?php bloginfo('template_url'); ?>/scripts/prototype.lite.js"></script>
<script type="text/javascript" src="<?php bloginfo('template_url'); ?>/scripts/moo.fx.js"></script>
<script type="text/javascript" src="<?php bloginfo('template_url'); ?>/scripts/moo.fx.pack.js"></script>
...

Можна записати так:

...
$templateurl = get_bloginfo('template_url');
<script type="text/javascript" src="<?php echo $templateurl ?>/scripts/prototype.lite.js"></script>
<script type="text/javascript" src="<?php echo $templateurl ?>/scripts/moo.fx.js"></script>
<script type="text/javascript" src="<?php echo $templateurl ?>/scripts/moo.fx.pack.js"></script>
...

Поясню: ми заздалегідь визначаємо шлях до шаблону і поміщаємо його змінну $templateurl, а потім скрізь, де потрібно написати шлях до шаблону пишемо <?php echo $templateurl ?> . Якщо sidebar і footer викликати через require або include ( require (‘sidebar.php’); ), замість стандартної функції WP – get_header(); , то один раз визначивши змінну $templateurl (десь у header), її можна буде використовувати і у файлах sidebar.php, footer.php.

2. Невелика оптимізація у коментарях

#1. Правимо код, пов’язаний з висновком дати:

<?php printf('%1$s at %2$s', get_comment_date(), get_comment_time()) ?>

Змінюємо його на:

<?php printf('%1$s у %2$s', get_comment_date('dmY'), get_comment_time('H:i')); ?>
//Або можна записати так:<?php echo date( 'dmY в H:i', strtotime($comment->comment_date) ); ?>

Такою зміною ми заздалегідь визначаємо формат дати, і функції get_comment_date() або get_comment_time() вже не вимагають формату дати з налаштувань сайту. Інформацію про формати дати, щоб далеко не ходити, можна переглянути в налаштуваннях WP (налаштування->загальні).

Економія: 2 звернення до даних із кожного коментаря.

#2. Замінюємо посилання на коментар у даті коментарю

Дата коментаря анкор посилання, якщо вона у вас є звичайно, зазвичай вона є. Замість функції, яка отримує адресу посилання ( get_comment_link() ) пишемо так: <a href=’#comment-<?php echo $comment->comment_ID ?>’>Тут дата</a>.

Економія: мінус ще за одним зверненням до даних із кожного коментаря.

Для наочності вище написаного

// так виглядає шматок коду коментарів у WordPress (за дефолтом):
<a href="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ) ?>"><?php printf(__('%1$s at %2$s'), get_comment_date(), get_comment_time( )) ?></a>

// я пропоную щоб він виглядав так:
<a href="#comment-<?php echo $comment->comment_ID ?>"><?php echo date( 'dmY в H:i', strtotime($comment->comment_date) ); ?></a>

Така нескладна зміна і якщо у статті, наприклад, 20 коментарів економія становитиме 60 звернень до даних.

Залишити коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *