Бесплатный анализ сайта, проверка PR и тИЦ, позиции в Google и Яндекс, инструменты для вебмастера и SEO компаний - REANIMATOR LTD., реаниматор вс

Нет новостей!
rss
Привет, друзья. Решил начать цикл публикаций про засеошивание Datalife Engine. При работе с движком периодически выявляется много нелепых недоработок со стороны разработчиков. Поэтому приходится искать и разбираться с ошибками, а потом править код ядра самому.
Сегодня мы поговорим о «правильных» заголовках title. Цель данного руководства:
Сделать все заголовки сайта уникальными и, как результат, избавиться от дублей
Улучшить заголовки с точки зрения восприятия и внешнего вида
Оптимизировать заголовки с точки зрения SEO
Бонус — уникализировать метаописание description
Для начала нам необходимо оценить масштаб трагедии и проверить сайт на наличие ошибок. Это можно сделать при помощи инструментов для веб-мастеров от Google в разделе Оптимизация -> Оптимизация HTML.
Я более чем уверен — ошибок там очень много!

Уникализация заголовков title для страниц пагинации сайта
Актуальность: Необходимо только для версий DLE 7.x, 8.x, 9.0, 9.2.
В панели вебмастеров Google могут содержаться ошибки в разделе Оптимизация -> Оптимизация HTML -> Повторяющиеся заголовки (теги title), а для того, чтобы их исправить необходимо уникализировать заголовки Title для каждой из страниц сайта.
Уникализация title для DLE 9.2
В версии DLE 9.2 существует небольшой баг. Реализовано добавление нумерации страниц в title вида «Название сайта — Страница 2» или «Название категории — Страница 2 — Название сайта». Однако, если в настройках категории заполнено поле «Метатег title» нумерация страниц пропадает.
Какие проблемы решаем:
Дублирование заголовков страниц пагинации для категорий сайта, в том случае, когда у категории заполнено поле «Метатег title» в админке
Раскрыть список правок
<?php

Открываем 
/engine/engine.php
НАХОДИМ
:
if ( 
$metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']);
ЗАМЕНЯЕМ НА:
if ( 
$metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']) . $page_extra;

?>


Теперь при любых настройках, проблемы с дублированием title категорий не будет.
Уникализация title для DLE 7.x, 8.x, 9.0
Какие проблемы решаем:
Дублирование title страниц пагинации сайта вне категорий, например, site.ru, site.ru/page/2/, site.ru/page/3/ и т.д.
Дублирование title страниц пагинации для категорий сайта, например, site.ru/category/, site.ru/category/page/2/, site.ru/category/page/3/ и т.д.
Дублирование title страниц пагинации комментариев в рамках одной новости, когда к новости много комментариев и они разбиваются на несколько страниц, например, site.ru/news_name.html, site.ru/page,1,2,news_name.html#comment, site.ru/page,1,3,news_name.html#comment и т.д.
Дублирование title в рамках одной новости, когда новость разделена на несколько страниц, например, site.ru/news_name.html, site.ru/page,2,1,news_name.html, site.ru/page,3,1,news_name.html и т.д.
<?php

Открываем 
/engine/engine.php
НАХОДИМ
:
if (
$nam_e) {
    
$metatags['title'] = $nam_e ' » ' $metatags['title'];
    
$rss_title $metatags['title'];
}
 
if (
$titl_e$metatags['title'] = $titl_e ' » ' $config['home_title'];
 
if ( 
$metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']);
ЗАМЕНЯЕМ НА:
if (
intval($_GET['cstart']) > ) {
    
$page_extra ' » '.$lang['news_site'].' '.intval($_GET['cstart']);
} elseif (
intval($_GET['news_page']) > 1) {
    
$page_extra ' » '.$lang['news_site'].' '.intval($_GET['news_page']);
} else 
$page_extra '';
 
if (
$nam_e) {
 
    
$metatags['title'] = $nam_e $page_extra ' » ' $metatags['title'];
    
$rss_title $metatags['title'];
 
} elseif (
$titl_e) {
 
    
$metatags['title'] = $titl_e $page_extra ' » ' $config['home_title'];
 
} else 
$metatags['title'] .= $page_extra;
 
if ( 
$metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']) . $page_extra;

?>


Данными правками мы добавили нумерацию страниц как для пагинации в рамках главной страницы и категорий, а так же добавили нумерацию в рамках одной публикации, разбитой на несколько страниц или содержащей несколько страниц комментариев.
Уникализация метаописания description для страниц пагинации сайта
Актуальность: Все версии DLE. Проверено на 7.x, 8.x, 9.x, 10.x.
В панели вебмастеров Google могут содержаться ошибки в разделе Оптимизация -> Оптимизация HTML -> Повторяющееся метаописание, а для того, чтобы их исправить необходимо уникализировать содержимое тега meta name="description".
Какие проблемы решаем:
Дублирование тега meta name="description" для всех страниц пагинации сайта (главная страница, категории, комментарии к новости)
Существует два пути решения — быстрый и простой вариант или более гибкое и качественное исполнение.
Вариант №1
Первый вариант — «на скорую руку» для тех кто не эстет.

<?php

Открываем 
/engine/engine.php
НАХОДИМ
:
<
meta name="description" content="{$metatags['description']}/>
ЗАМЕНЯЕМ НА:
<
meta name="description" content="{$metatags['description']}{$page_extra}/>

?>


Теперь на страницах пагинации категорий и в полных новостях на страницах пагинации комментариев будет уникальный meta description, в него будет добавляться в конце " » Страница 123".
Вариант №2
Второй вариант — более интересный за счет того, что вместо " » Страница 123" можно указать что-то свое, например, как сделал я — " стр. 213".
Раскрыть список правок
Открываем /engine/engine.php
НАХОДИМ:

<?php

if (intval($_GET['cstart']) > ){
 
    
$page_extra ' » '.$lang['news_site'].' '.intval($_GET['cstart']);
 
} else 
$page_extra '';
ЗАМЕНЯЕМ НА:
if (
intval($_GET['cstart']) > ){
    
$page_extra ' » '.$lang['news_site'].' '.intval($_GET['cstart']);
    
$meta_ext_page ' стр. ' .intval($_GET['cstart']);
} else {
    
$page_extra '';
    
$meta_ext_page '';
}
$meta_ext_page ' стр. ' .intval($_GET['cstart']); — эта часть отвечает за формирование «добавки» в meta descriptionintval($_GET['cstart'— это номер страницыа ' стр. ' — это собственно текст.
НАХОДИМ:
<
meta name="description" content="{$metatags['description']}/>
ЗАМЕНЯЕМ НА:
<
meta name="description" content="{$metatags['description']}{$meta_ext_page}/>

?>


Все готово. Теперь повторяющихся метаописаний больше не будет.
Улучшение SEO характеристик заголовков title
Актуальность: Все версии DLE. Проверено на 7.x, 8.x, 9.x, 10.x.
Если у нашей публикации не задан «Метатег title», то по умолчанию будет выводиться следующий title «Название публикации — Название сайта». Или для категории, когда не задан «Метатег title», по умолчанию выводится следующий title «Название категории — Название сайта».
Какие проблемы решаем:
Не самое оптимальное формирование title с точки зрения требований SEO
Вы верите в миф, что вес каждого слова в заголовке title обратно пропорционален их количеству, то есть, чем меньше слов в title, тем больший вес каждое из них будет иметь? Если вы согласны с этим мнением, то читайте дальше.
Оптимизация title для DLE 7.x, 8.x, 9.0

<?php

Открываем 
/engine/engine.php
НАХОДИМ
:
    
$metatags['title'] = $nam_e ' » ' $metatags['title'];
ЗАМЕНЯЕМ НА:
    
$metatags['title'] = $nam_e;
НАХОДИМ:
if (
$titl_e$metatags['title'] = $titl_e ' » ' $config['home_title'];
ЗАМЕНЯЕМ НА:
if (
$titl_e$metatags['title'] = $titl_e;
Скрыть список правок
Теперь вместо стандартных title «Название публикации — Название сайта» и «Название категории — Название сайта» будут выводиться «Название публикации» и «Название категории» соответственно
.
Оптимизация title для DLE 9.x (кроме 9.0), 10.x
Раскрыть список правок
Открываем 
/engine/engine.php
НАХОДИМ
:
    
$metatags['title'] = $nam_e $page_extra ' » ' $metatags['title'];
ЗАМЕНЯЕМ НА:
    
$metatags['title'] = $nam_e $page_extra;
НАХОДИМ:
    
$metatags['title'] = $titl_e $page_extra ' » ' $config['home_title'];
ЗАМЕНЯЕМ НА:
    
$metatags['title'] = $titl_e $page_extra;

?>


Теперь все категории будут содержать в title только название категории, а публикации, соответственно, только название публикации.
Продвинутая SEO оптимизация заголовков title категорий
Актуальность: Все версии DLE. Проверено на 7.x, 8.x, 9.x, 10.x.
Идея следующая. Представим ситуацию, у нас есть категория, мы ее продвигаем по определенным запросам, следовательно в настройках у нее заполнено поле «Метатег title», и скорее всего этот title у нас длинноват и не очень красив.
Вот живой пример. Есть категория с именем «Белковые диеты» (это имя отображается в speedbar'е, в полной новости, в списке категорий к которым эта новость относится и т.д.), а метатег title у этой категории такой «Белковые диеты — белковая диета для похудения, отзывы худевших, рецепты, меню».
Так вот, если «Метатег title» заполнен, то в тайтл на сайте идет именно он, а не имя. И при наличии пагинации новостей в категории, тайтл нашего сайта будет не очень красив, я говорю о том, что для каждой страницы будет выводиться вот этот длинный засеошенный заголовок и приставка с номером страницы.
Предлагаю сделать так, чтобы оптимизированный тайтл (поле «Метатег title» категории) выводился только для первой страницы категории, а на всех остальных выводился приличный короткий тайтл (поле «Имя» категории).
Какие проблемы решаем:
Не корректное с точки зрения SEO формирование заголовков title для страниц пагинации сайта

<?php

Открываем файл 
/engine/engine.php
НАХОДИМ
:
Для DLE 8.2-9.0
if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']);
Для DLE 9.x (кроме 9.0), 10.x
if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title'].$page_extra);
ЗАМЕНЯЕМ НА:
//разные title для страниц пагинации, для первой полный title, для пагинации короткий
if ($do == "cat" and $category != '' and $subaction == '') { //если категория
    
if ( $metatags['header_title'] and ! $page_extra $metatags['title'] = stripslashes($metatags['header_title']);
    else 
$metatags['title'] = stripslashes($cat_info[$category_id]['name']) . $page_extra;
} elseif (
$dle_module == "main") { //если главная страница
    
if ( ! $page_extra $metatags['title'] = stripslashes($config['home_title']);
    else 
$metatags['title'] = stripslashes($config['short_title']) . $page_extra;
} elseif (
$metatags['header_title']) $metatags['title'] = stripslashes($metatags['header_title']);
//разные title для страниц пагинации, для первой полный title, для пагинации короткий

?>


Если сделали все это? Тогда можете считать, что вы выжали максимум возможностей из движка DLE!
 
Дата добавления: 2015-02-19 15:53:26, просмотров: 1984
Поделись с друзьями в соц. сетях и получи 1000 р. на счет - reanimator.net:
   
каталог
 
Поддержка:
E-mail: Вопрос
Работаем с WebMoney Полный спектр компьютерных и интернет услуг! SEO, раскрута, сайты и интернет магазины под заказ: reanimator.net Карта сайта: Sitemap