Теперь можно покопаться в шаблоне (находится в /wp-content/themes/имя_шаблона/).
Попробуем убрать лишние запросы к базе данных при загрузке страниц вашего блога. Дело в том, что разработчики темы оформления для WordPress делают ее универсальной и подходящей, естественно, к любому блогу, с условием, что этот блог работает на движке WordPress. Поэтому, например, чтобы выводить на страницах вашего блога в шапке (верхняя часть шаблона страницы) название блога, необходимо в файле header.php
вашей темы оформления прописать код на языке PHP, который запросит это название из базы данных и затем уже вставит его в код страницы.
Для этого скачаем редактор Notepad++, так как нам нужно работать в формате UTF-8 without BOM!
Внимание: Редактируйте файты WordPress’a только редакторами, поддерживающими формат UTF-8 without BOM!!!
Вот полезный код для вставки в шаблон на время оптимизирования(чтобы узнать, сколько запросов к БД идёт со страницы):
<?php echo get_num_queries(); ?>/<?php timer_stop(1);>
Приведу пример из своего шаблона:
Открываем файл header.php.
В цитатах я буду писать красным и зелёным цветом. Красный — начальный вариант, Зелёный — на что нужно заменить!
Основной язык сайта, заменяем:
<html xmlns=”http://www.w3.org/1999/xhtml” <?php language_attributes(); ?>>
<html xmlns=”http://www.w3.org/1999/xhtml” dir=”ltr” lang=”ru-RU”>
Строка выбора кодировки страницы, меняем:
<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? />
Тайтл (Меняем ТОЛЬКО в случае, если вас сателлит или ГС, настроенный под сапу и тд. так так на всех страницах станет одинаковый тайтл):
<title><?php bloginfo(’name’); ?> <?php if ( is_single() ) { ?> » Blog Archive <?php } ?> <?php wp_title(); ?></title>
<title>Тут впишите свой тайтл</title>
Информация о движке:
<meta name=”generator” content=”WordPress <?php bloginfo(’version’); ?>” />
<meta name=”generator” content=”WordPress 2.8.2? />
Стили (таких строчек может быть много):
<link rel=”stylesheet” href=”<?php bloginfo(’stylesheet_url’); ?>” type=”text/css” media=”screen” />
<link rel=”stylesheet” href=”ВАШ_САЙТ/ШАБЛОН/style.css” type=”text/css” media=”screen” />
RSS:
<link rel=”alternate” type=”application/rss+xml” title=”<?php bloginfo(’name’); ?> RSS Feed” href=”<?php bloginfo(’rss2_url’); ?>” />
<link rel=”alternate” type=”application/rss+xml” title=”RSS Подписка” href=”http://ВАШ_САЙТ/?feed=rss2? />
XML-RPC:
<link rel=”pingback” href=”<?php bloginfo(’pingback_url’); ?>” />
<link rel=”pingback” href=”http://ваш_сайт.ru/xmlrpc.php” />
Меню: Ну тут у каждого своё, лишь совет: если у вас чётко определено верхнее меню, то отредактируйте его, как и перечисленные выше строки.
Если название блога точно определено, то меняем:
<a href=”<?php echo get_option(’home’); ?>/”><?php bloginfo(’name’); ?></a>
<a href=”http://адрес_сайта.ru/”>Название Блога</a>
Если описание блога определено, и не собираетесь менять в ближайшее время, то:
<div class = “description”><?php bloginfo(’description’); ?></div>
<div class = “description”>Описание вашего блога</div>
Вроде всё, с файлом header.php закончили. Ах, да, я делал немного проще: Зашёл к себе на сайт (когда ещё ничего не оптимизировал в шаблоне), посмотрел исходный код этой HTML страницы, скопировал шапку и вставил в файл header.php. Вышло гораздо быстрее
- удалить строку с информацией о номере установленной версии WordPress. Она не несет никакой полезной нагрузки, и более того, является опасной, т.к. некоторые варианты взлома применимы только к определенным версиям WordPress, а из этой строки как раз очень удобно узнавать текущую версию вашего движка. Выглядит эта строка обычно так:
1
<meta name=
"generator"
content=
"WordPress <?php bloginfo('version'); ?>"
/>
- заменить URL до вашего файла таблицы стилей CSS, используемого в вашей теме оформления на статический. В коде файла
header.php
это строка:<link rel=
"stylesheet"
href=
"<?php bloginfo('stylesheet_url'); ?>"
type=
"text/css"
media=
"screen"
/>
- заменить URL до иконки favicon.ico на статический. Вы не знаете для чего нужна иконка под названием
favicon.ico
? Она будет отображаться, например, в поисковой выдаче слева от названия вашего сайта или же в браузерах (в адресной строке или перед названием страницы на вкладках), при открытии страниц вашего блога. У моего блога это иконка желтой лампочки. Если у вас еще нетfavicon.ico
, то обязательно создайте ее и пропишите путь к ней файлеheader.php
. Она придаст вашему блогу индивидуальность и узнаваемость. В оригинальном файлеheader.php
строка с заданием пути доfavicon.ico
может выглядеть примерно так:1
<link rel=
"shortcut icon"
type=
"image/ico"
href=
"<?php bloginfo('template_directory'); ?>/favicon.ico"
/>
- заменить URL до вашего фида (Rss ленты) на статический. Что такое RSS лента и для чего ее обязательно нужно использовать на блоге вы можете почитать в этой статье — Для чего нужна и как должна выглядеть RSS лента новостей вашего сайта. В коде файла
header.php
это строка:1
<link rel=
"alternate"
type=
"application/rss+xml"
title=
"<?php bloginfo('name'); ?> RSS Feed"
href=
"<?php bloginfo('rss2_url'); ?>"
/>
- заменить URL до на статический. В коде файла
header.php
это строка:1
<link rel=
"pingback"
href=
"<?php bloginfo('pingback_url'); ?>"
/>
А откуда взять все эти статические пути, которые мы должны прописать заместо кода PHP? Есть довольно простой способ. Вам нужно всего лишь открыть любую страницу вашего блога в браузере и посмотреть ее исходный код. Для этого, щелкаете правой кнопкой мыши по странице в любом браузере и выбираете из контекстного меню что-то вроде «Исходный код страницы» или «Исходный код», в зависимости от того, в каком именно браузере открыта эта страницы. Теперь ищите там нужные строки и копируете пути к файлу CSS, к фиду и т.п.
Дело в том, что при создании страницы, PHP код интерпретируется в реальные статичные URL. Вот именно их мы скопируем по очереди и вставим в файл header.php
вместо участков кода. Вот так выглядел блог кода до преобразования:
1 | <meta name= "generator" content= "WordPress <?php bloginfo('version'); ?>" /> |
2 | <!-- leave this for stats --> |
3 | <link rel= "shortcut icon" type= "image/ico" href= "<?php bloginfo('template_directory'); ?>/favicon.ico" /> |
4 | <link rel= "stylesheet" href= "<?php bloginfo('stylesheet_url'); ?>" type= "text/css" media= "screen" /> |
5 | <link rel= "alternate" type= "application/rss+xml" title= "<?php bloginfo('name'); ?> RSS Feed" href= "<?php bloginfo('rss2_url'); ?>" /> |
6 | <link rel= "pingback" href= "<?php bloginfo('pingback_url'); ?>" /> |
7 | <script type= "text/javascript" src= "<?php bloginfo('stylesheet_directory'); ?>/taber.js" ></script> |
а так после замены URL на статичные:
1 | <link rel= "shortcut icon" type= "image/ico" href= "http://ktonanovenkogo.ru/wp-content/themes/Reafew/favicon.ico" /> |
2 | <link rel= "stylesheet" href= "http://ktonanovenkogo.ru/wp-content/themes/Reafew/style.css" type= "text/css" media= "screen" /> |
3 | <link rel= "alternate" type= "application/rss+xml" title= "RSS 2.0" href= "http://ktonanovenkogo.ru/feed" /> |
4 | <link rel= "pingback" href= "http://ktonanovenkogo.ru/xmlrpc.php" /> |
5 | <script type= "text/javascript" src= "http://ktonanovenkogo.ru/wp-content/themes/Reafew/taber.js" ></script> |
Еще определенное количество запросов к базе данных в минус. Ну и конечно же, то о чем мы говорили в начале статьи. Найдите в этом файле header.php
участки кода отвечающие за вывод названия и описания блога:
1 | <?php bloginfo( 'name' ); ?> |
и
1 | <?php bloginfo( 'description' ); ?> |
Их нужно будет заменить, соответственно, на название и описание вашего блога. Если у вас вдруг после сохранения файла header.php
вместо русских букв вылезут кракозябры, то откройте файл повторно на редактирование в Notepad++, выберите из верхнего меню пункт «Кодировка» — «Преобразовать в UTF-8 без BOM», а затем опять сохраните файл.
Если у вас еще в файле header.php
имеет описание меню, то там можно вручную прописать ссылку на главную страницу. В оригинале эта строка может выглядеть так:
1 | <a href= "<?php echo get_option('home'); ?>/" >Главная</a> |
ее надо будет заменить на:
1 | <a href= "http://hww.ru/" title= "hww.ru - в помощь начинающим вебмастерам | Создание и продвижение сайтов на Joomla, блогов на WordPress, форумов на SMF, интернет-магазинов на VirtueMart, заработок на сайте" >Главная</a> |
Теперь перейдем к файлу footer.php
, который так же должен находиться в папке с вашей темой оформления по адресу /wp-content/themes/название_вашей_темы_оформления
. В нем можно заменить строку выводящую информацию о том, что все права защищены, примерно такого вида:
1 | <p class = "alignleft" >& copy ; <?php echo date ( "Y" ); ?> <?php bloginfo( 'name' ); ?> Все права защищены <br /> |
на что-нибудь такое, например:
1 | <div class = "center" ><a href= "http://hww.ru/" title= "hww.ru - блог о создании сайтов на Joomla, блогов на WordPress, форумов на SMF, интернет-магазинов на VirtueMart, продвижении и заработке на сайте" ><h3 class = "description" >& copy ; KtoNaNovenkogo.ru - все о создании сайтов на Joomla, блогов на WordPress, форумов на SMF, интернет-магазинов на VirtueMart, SEO продвижение и заработок на сайте </h3> </a></div> |
Кроме того, что в этом случае убираются лишние запросы к базе данных, здесь еще и создается ссылка с нужными ключевыми словами, которая будет вести на главную страницу со всех страниц блога (Внутренняя оптимизация сайта). Ну и для повышения значимости этих ключевых слов, они заключены в тег акцентирования H3 (Теги акцентирования (H1 -H6, STRONG, EM) – улучшаем внутреннюю оптимизацию сайта).
У меня, например, в footer.php
дублируется верхнее меню и, следовательно, я так же как и в файле header.php
заменил участок кода описывающий ссылку на главную страницу на статичный URL.
Остальные файлы редактируем также как и header.php …
Ещё парочка советов:
У вас сателлит и вам не нужно комментирование на сайте? — Отключайте комменты в админке, и удалите всё из файла comments.php .
У вас сателлит? – значит по любому у вас есть облако меток – вместо плагина сохраните его как html код, и вставьте в страницу.
У вас сателлит и вы не будете больше добавлять новые категории? – также сохраните их как html и вставьте вместо виджета!
В файле single.php у многих шаблонов название новости – ссылка на эту же новость. Зачем же это? – Убираем! Ещё минус один запрос!