Совсем недавно я открыл для себя очень популярный в интернете скрипт кэш MaxCache, применяемы для wordpress. С его помощью можно уменьшить нагрузку на хостинг и ускорить загрузку блога. Результаты у него впечатляющие – потребление памяти уменьшается в сто раз, страницы загружаются в 1000 раз быстрее и не использует при этом базу данных. Установка не сложная. Единственное что, Вам придется выложить за скрипт около 30 $. В том случае, если у Вас посещаемость проекта от 5 до 10к пользователей за сутки, вы сможете «отбить» его стоимость уже за два, три месяца, потому что будете экономить на хостинге. В процессе использования обнаружилось, что кэш MaxCache с плагином Platinum Seo ну никак не хочет совмещаться. Поэтому сегодня я поделюсь с Вами одним хаком, с помощью которого эту проблему можно, более-менее, решить.
Списанное офисное оборудование, такое как оргтехника и компьютеры, ни в коем случае нельзя просто выкидывать на свалку или помойку. Для все техники должна быть произведена утилизация компьютеров и оргтехники. Как именно избавится от ненужной техники и куда обратиться, можно найти на сайте компании предоставляющей утилизацию.
Опишу проблему более подробно. Если включить MaxCache и плагин Platinum Seo появляется ошибка с тегом МЕТА заголовка (title) для страницы. После того, как страница попадала в кэш, title исчезал, а описание с ключевыми словами сохранялись. Именно заголовок (title) страницы является одним из самых важных элементов при оптимизации страницы. Не могу сказать точно, как «видят» и «воспринимают» такую работу поисковики – возможно, им удается загружать страницу не из кэша, возможно нет, но в любом случае необходимо было что-то сотворить с этим title тегом.
Потом выяснилось, эта проблема – следствие ошибки разработчиков плагина Platinum Seo. Создатель кэша MaxCache прокомментировал ситуацию так:
«Мой кэш в работу WordPress никаких изменений не вносит. Работа кэша базируется на буферизации вывода, другими словами вначале включается буферизация, потом отрабатывает кэш и выводится буфер. Основное задание плагина Platinum SEO -это замена в теле определенной страницы строк: ключевые слова, тайтл и т.д. То есть разработчики не прописали функцию для meta и title, а включили свою буферизацию вывода. И при этом забыли прописать окончание буферизации, вследствие чего код, находящийся в буферобмене плагина Platinum SEO, обрабатывается на предмет title и оказывается за пределами буфера кэша. Если б буферизация использовалась корректно, никаких проблем конечно бы не возникло».
Я провел несколько исследований и обнаружил, что кэш Maxcache способен считывать заголовок страницы, если таковой приписан в шаблоне блога. Благодаря этому наблюдению и возникла идея сделать seo оптимизированный заголовок (title) в шаблоне wordpress блога. Мне это показалось проще, чем изучать код плагина Platinum Seo, состоящий из множества строчек.
Итак, в разделе админ. управления, находим вкладку «Внешний вид» в ней меню «Редактор» Проваливаемся в файл шаблона header.php , сверху, где расположен тайтл страницы, дописываем следующую конструкцию:
[php]
<title>
<?php if ( is_single() ) {
echo (get_post_meta($post->ID, title, true).» :: Дизайн Мания»);
} else if ( is_page() ) {
echo (get_post_meta($post->ID, title, true).» :: Дизайн Мания»);
} else if ( is_category() ) {
echo (single_cat_title(», true).» :: Дизайн Мания»);
} else if ( is_tag() ) {
echo («Дизайн Мания :: «); echo (single_tag_title(», true));
} else if ( is_month() ) {
echo (the_time(‘F, Y’).» :: Дизайн Мания»);
} else if ( is_search() ) {
echo («Поиск по сайту Дизайн Мания»);
} else if ( is_404() ) {
echo («Страница на сайте не найдена.»);
} else if ( is_home() ) {
echo («Дизайн Мания — блог про веб дизайн (web design)»);
}
?>
</title>
[/php]
Немного поясню данную запись. В предыдущих статьях уже рассказывалось о том, что представляют собой словные операторы в вордпресс, с помощью которых можно выводить текст только на главную страницу. Здесь применяется тот же принцип – проходят проверку разные условия:
is_category – страница категории;
is_single – если страница является постом блога;
is_month – если открыт архив помесячно;
is_page – отдельная страница в wordpress;
is_search – страница с результатами поиска;
is_tag – условие соответствует странице тегов;
is_home – главная страница сайта, может быть еще is_front_page;
is_404 – ошибка 404 – такая страница в блоге отсутствует;
echo – функция, которая выводит текст внутри тега title;
single_tag_title – функция, выводящая названия тегов;
single_cat_title – функция, выводящая названия категорий.
Для каждого конкретного случая значение title можно брать из настроек плагина Platinum Seo.
Плагин Platinum Seo в процессе заполнения полей title, description, keywords для сообщения или страницы создает свободные поля custom fields, из которых можно считывать значение с помощью функции get_post_meta.
В результате проведенных не сложных манипуляций заголовок title для всех сообшений блога получается именно таким, каким Вы задавали его в Platinum Seo, таким образом, проблема оптимизации будет решена для поисковых систем. Правда, заголовки страниц категорий получаются весьма скомканными, но можно использовать плагин All Meta. Я протестировал данное решение, в итоге получился еще один хак для Maxcache (но уже более продвинутый), который позволяет использовать и даже корректно выводить заголовки (title) для страниц категорий и архивов тегов.
Еще можно немного доработать код для header.php, дописав обработку условных операторов – для архивов годов, дня (если в блоге имеется календарь), и дополнительно наладить считывания МЕТА тегов в случаях перехода по страницам сайта и т.д. Принцип хака, я думаю, Вам понятен.