Хак для Maxcache – как сделать seo title в wordpress без плагина
Недавно в другом блоге я рассматривал популярный в рунете скрипт кэш MaxCache для wordpress, который позволяет ускорить загрузку блога и снизить нагрузку на хостинг. Результаты у него достаточно хорошие – снижение потребления памяти в 100 раз, страницы грузятся быстрее в 1000 раз, а базу данных вообще не использует. Установка простая, единственной сложностью можно считать оплату за скрипт в 30 у.е., но при сильно посещаемых проектах с 5-10к пользователями в сутки он может окупиться уже за пару месяцев за счет экономии на хостинге. Правда в процессе использования удалось обнаружить, что кэш MaxCache не дружит с популярным плагином Platinum Seo – сегодня рассказу о небольшом хаке, который может более-менее решить проблему.
Пару слов о проблеме. При включении кэша MaxCache и плагина Platinum Seo возникала ошибка с МЕТА тегом title для страницы. При попадании страницы в кэш ключевые слова и описание (keywords, descriptions) сохранялись, а title исчезал. А ведь именно заголовок страницы является чуть ли не самым важным при оптимизации страницы. Я точно не знаю как «видели» и «воспринимали» такое поведение роботы поисковых систем – возможно они могли брать страницу не из кэша, может нет – в любом случае нужно было что-то сделать с этим title тегом.
Как оказалось проблема возникает из-за ошибки разработчиков в плагине Platinum Seo. Вот как прокомментировал мне создатель кэша MaxCache:
Мой кэш никаких изменений в работу WordPress не вносит. Но работа кэша основана на буферизации вывода, то есть вначале включается буферизация, после отработывает кэш и буфер выводится. Работа плагина Platinum SEO заключается в замене в теле страницы строк: тайтл, ключевые слова и т.п. То есть вместо того, чтобы просто прописать функцию для meta и title, разработчики решили включать свою буферизацию вывода. Но забыли прописать завершение буферизации, поэтому тот код, который находится в буфере плагина и обрабатывается на предмет тайтлов просто оказывается вне буфера кэша. Если бы разработчики плагина использовали буферизацию корректно, то проблем не было бы.
В процессе некоторых исследований удалось заменить, что кэш Maxcache может считывать title страницы, если он прописан в шаблоне блога. Тут и возникла идея – а почему бы не сделать seo оптимизированный title в wordpress блог в шаблоне. По крайней мере это было проще чем изучать тысячи строчек кода плагина Platinum Seo.
Итак, заходим в раздел админки «Внешний вид» – меню «Редактор». Открываем файл шаблона header.php и в самому верху там где располагается title добавляем приблизительно таккую конструкцию:
<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>
Теперь немного пояснений. Когда-то уже рассказывал о том что такое условные операторы в wordpress и как с их помощью можно вывести текст только на главную страницу. Здесь используется тот же самый принцип – проверяются разные условия:
- is_single – если страница является постом блога;
- is_page – отдельная страница (Page) в wordpress;
- is_category – страница категории;
- is_tag – условие соответствует странице тегов;
- is_month – если открыт архив по месяцам;
- is_search – страница с результатами поиска;
- is_404 – ошибка 404 – нет такой страницы в блоге;
- is_home – ну и напоследок главная страница сайта, может быть еще is_front_page.
Значения title для каждого случая можно взять из настроек плагина Platinum Seo.

Функция echo в коде выше просто выводит текст внутри тега title для заголовка. Что касается используемых функций, то single_tag_title и single_cat_title соответственно выводят названия тегов и категорий, а вот get_post_meta действует куда более тонко. Дело в том, что плагин Platinum Seo при заполнении полей title, keywords, description для поста или страницы создает произвольные поля custom fields, а из них можно считать значение с помощью функции get_post_meta.
Таким образом, для всех постов блога заголовок title получится именно таким, каким вы задавали его в Platinum Seo, то есть проблема оптимизации для поисковиков будет решена. Да, конечно, тайтлы страниц категорий и тегов будут весьма скомканными, но здесь можно попробовать плагин All Meta (я не тестировал, но, по идее, там никаких глюков быть не должно). В принципе, код для header.php можно еще немного доработать, добавив обработку всех условных операторов – для архива года, дня (если есть календарь в блоге) + сделать считывания МЕТА тегов при переходе по страницам сайта и т.п. Сам принцип хака, думаю, вам уже понятен.
UPDATE:Я попробовал совместить данное решение с плагином All Meta, в результате чего получился еще один хак для Maxcache (более продвинутый), позволяющий использовать и корректно выводить заголовок (title) для страниц архивов тегов и категорий.
Читать книги – это не только полезно, но и модно, посетите книжный интернет магазин и закажите тебе с доставкой на дом пару книг быстро и удобно.
Многие пользователи iPhone и другой техники Apple любят выделяться, так бампера на iPhone 4 помогут обрести вашему аппарату оригинальный, стильный и уникальный вид.
В последнее время правильно питание стало весьма актуальной проблемой, полезность продуктов для организма иногда может оказаться большей чем какие-то лекарства.
Комментариев - 5 к статье “Хак для Maxcache – как сделать seo title в wordpress без плагина”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Добавление миниатюры (thumbnail) в RSS для wordpress
- Category SEO Meta Tags – МЕТА данные для категорий и тегов
- 10 плагинов для админ панели WordPress
- LinkGator.ru – биржа вечных ссылок и статей
- Смена рубрики и массовое редактирование wordpress постов
- Paylicense – хостинг с широким спектром услуг
- WP-RecentComments – плагин и виджет последних комментариев
- Безопасность (4)
- Видео (5)
- Возможности (58)
- Начинающим (18)
- Новости (20)
- Оптимизация (13)
- Плагины (66)
- Сервисы (14)
- Хаки и секреты (43)
- Шаблоны (13)
- Плагин WP-PostRatings рейтинга постов в WordPress
- Оптимизируем WordPress header и удаляем лишние элементы
- Кэширование в wordpress – выбираем лучший плагин для кэширования
- SEO оптимизация WordPress блога (+видео)
- Увеличиваем memory_limit для wordpress
- Плагины кэширования Hyper Cache + DB Cache Reloaded Fix для wordpress
- Плагин WP-Optimize – оптимизация базы данных
- Блог про смартфоны
- Seleckis.lv — Журнал Никиты Селецкого
- Блогинг в стиле web 2.0
- Достопримечательности Львова
- Про блоги для блоггеров
- WordpressPlugins.ru
- Ттелефон Explay Titan в Связном
- Ericsson и планка скорости
- Новая линейка от HTC
- Dr.Web Light 7 для Android
- Рост доходов корпорации Google
- Наказаны за слухи
- Samsung Galaxy S III не получит беспроводную зарядку до сентября
- В июне Apple представит новые ноутбуки MacBook Pro
- Amazon займется созданием собственных онлайн-телешоу
- Новые банки в системе «Яндекс.Деньги»
- Chrome OS станет похожей на традиционные операционные системы

Оцените статью: 
Категории:
Теги:
Дружище , тебе самому надо хак сделать для этого сайта. А то он вобще колом стоит и страницы не грузятся:( надо принимать решения, а то пользователи сбегут:)
интересно так, вы хвалите кэш от макса, а сами им не пользуетесь
Елена, кто вам такое сказал) Пользуюсь, но не для этого сайта – установлен на Дизайн Мании. Здесь все никак руки не доходят поставить, может быть в ближайшее время разберусь с этим.
а сравнение не делали? может где-то статья есть с графиками? а то кэш макса выдает одно, а вордпресс выдает другие данные загрузки.
Елена, где-то находил сравнение, точно не помню. Тоже заметил, что все эти тесты загрузки выдавали разные значения – кэш, вордпресс, сторонние сервисы, поэтому я просто потестировал на практике 3 варианта плагинов – кеширование страниц, страницы + запросы и кэш MaxCache. Последний был наиболее эффективен, его и оставил. Можете поискать в блогах отзывы, там у некоторых есть графики.