SEO оптимизация DLE
Представляю на https://dle9.com/ статью SEO оптимизация DLE 9.6 — 11.x — это свежий мануал из 15 пунктов оптимизации движка DLE 9.6 — 11.x . Инструкция разбита на 15 HTML страниц, которые добавлены в архив. В каждом пункте краткое объяснение того, что дает изменения в движке. SEO оптимизация DatalIfe Engine 9.6 — 11.x — это мануал из 15 пунктов самых последних и проверенных методов, которые работают без ошибок.
Лучший способ увеличить посещаемость сайта — это следовать всем рекомендациям SEO оптимизации Гугл и Яндекс, но ещё больший эффект даёт сервис e-linker.ru, на котором предлагают услугу размещения естественных ссылок, там каждый вебмастер может заказать ссылки с трафиком. Ведь, если статья заинтересует читателей высокопосещаемого ресурса, то это обязательно привлечет большой поток людей, а поисковые системы выведут в топ ваш веб-проект и в целом это должно помочь увеличить трастовость сайта.
Внимание! Если вы будите делать SEO оптимизацию по данной инструкции, не стоит делать всё подряд. Лучше всего делайть по одному пункту и проверяете сайт, ведь, если вы допустите ошибку, сделав всё пункты подряд, потом придется искать, место и файл где вы допустили ошибку или почему сайт не работает. У одного пользователя уже была такая проблема, т.к. найти причину было сложно, осталось всё откатывать назад.
Весь список пунктов:
1. Улучшение SEO характеристик заголовков title. В этом пункте мы избавимся от приставки Названия сайта в meta title.
2. Ошибка 404 с несуществующих страниц пагинации. В этом пункте мы избавимся от несуществующих страниц пагинации, если выходит код ошибки 404.
3. Ошибка 404 с несуществующих страниц пагинации комментариев. В этом пункте мы избавимся от несуществующих страниц пагинации комментариев, страница с кодом 404.
4. Ошибка 404 с разделов или категорий, которых больше не существует. В этом пункте мы избавимся от категорий которых уже нету, не было или были удалены.
5. Ошибка 404 для публикаций, у которых отсутствует ID. В этом пункте мы сделаем отдачу 404 страницам у которых нету ID и они не являются статическими. Это более правильней и логичнее чем делать 301 редирект на главную
6. Ошибка 404 для удаленных или несуществующих новостей. В этом пункте мы сделаем отдачу 404 для новостей которых нету или были удаленны. Как исправить ошибка 404 сайт недоступен?
Что значит ошибка page not found 404, прочитать можно по этой ссылке.
7. Добавляем тег rel=”canonical” для страниц просмотра полной новости. В этом пункте мы сделаем пометим каноническую страницу атрибутом rel=»canonical» для того, что бы задать основную страницу, и отбить все возможные ее дубли.
8. Добавляем meta теги rel=»next» и rel=»prev».
— Что такое next и prev мета теги ?
1) Эти атрибуты rel=»next» и rel=»prev» , помогут указать связь между несколькими URL.
2) Благодаря этой разметке Google может определить, что содержание данных страниц связано в логической последовательности, и направить пользователя на начальную страницу.
А так же :
Создать консолидированный индекс страниц, чтобы ссылки не рассеивались между отдельными страницами page-1.html, page-2.html, и так далее
При поиске направить пользователя на наиболее релевантную страницу среди всех остальных, например в начало статьи, разбитой на несколько страниц
Добавим эти атрибуты для главной пагинации и для пагинации категорий.
9. Убираем index.php и index.html из адреса главной страницы. В этом пункте мы уберем дубли главной страницы по index.php/html
Внимание! Данный вариант для страницы с index.php, делать не нужно, так как в новых версиях начиная с 10.1 используется тег rel=”canonical”.
10. Склейка зеркал. В этом пункте мы избавимся от зеркал домена и установим главное зеркало нашего домена.
Сайт будет открываться, только если у вас домен.ru без WWW
Сайт будет открываться, только по www.домен.ru с WWW
11. ErrorDocument 404 . В этом пункте мы зададим 404 страницу через htaccess
12. Ошибка 404 вместо «По данному адресу публикаций на сайте не найдено». В этом пункте мы зададим 404 тогда когда нет контента или ошибки.
13. Правильные хлебные крошки. В этом пункте мы сделаем так, что бы на странице на которой мы находимся не ссылалась сама на себя в хлебных крошках. Так было заведено еще с книжных времен.
14. Новость только по родительской категории
Внимание! Спасибо что сюда посмотрели и это читаете. Данная правка только для ЧПУ-2. Она никак не будет работать на других
Объяснение :
В этом пункте мы сделаем доступ к новости только по родительской категории. К примеру у нас есть Главная категория Фильмы, у нее есть подкатегория Боевики
В данном случае новость, что находится в категории Боевики, может быть доступна как /Фильмы/Боевики/новость.html, так и /Боевики/новость.html, а теперь мы сделали что бы была только /Фильмы/новость.html
Зачем и почему и для чего :
1) Так мы убираем не нужное дублирование новости.
И так же, если вы где-то выводите категории новости через тег то теперь меняем его на
15. Со слэша на без слэша. В этом пункте мы уберем все ссылки с слэшом на без него. Ведь страницы со слешем и без него – разные страницы.
DLE СЕО (SEO) оптимизация шаблона

Но разработчики не всегда успевают за временем. А разработчики шаблонов для DLE не всегда используют все возможности движка для внутренней оптимизации сайта.
Данная статья поможет вам оптимизировать движок DLE чтобы тот стал еще лучше оптимизирован в СЕО плане для поисковых систем Гугла и Яндекс.
Информация на этой странице только для тех кто понимает DLE!
Оптимизация DLE:
1. Для того чтобы в DLE не было титлов и дескрипшенов на страницах пагинации типа: /page/33/.
Можно в сделать вывод тегов titl и description только на первых 4 страницах пагинации.
[available=cat|main][page-count=1,2,3,4][/page-count][/available] [not-available=cat|main][/not-available]
2. В шаблоне DLE сделать вывод описания Утилиты — «Описания и Метатеги».
[page-title] [/page-title] [page-description] [/page-description] [available=cat|userinfo|allnews][page-count=1] [/page-count] [/available]
С помощью стандартной утилиты «Описи и метатеги» (admin.php?mod=metatags) прописываем для первых 4 страниц свои Титлы и Дескрипшены.
- /index.php?do=feedback
- /index.php?do=search
- /page/2/
- /user/admin/
- /user/admin/news/page/2/
- /lastnews/page/2/
3. Добавляем фавиконы в шаблон DLE:
4. Можно в main, а можно и в отдельном файле шаблона DLE {include file=»0-shablon/metategu.tpl»> подключаем Мета описания и период сканирования роботами:
* Не забудьте для статической страницы прописать титл и дескрипшен как для главной.
[available=main][page-count=1] [/page-count][/available] [aviable=main][/aviable] [aviable=cat][/aviable] [aviable=showfull][/aviable]
Оптимизацыя вывода страниц пагинации в шаблоне DLE
1. Для сайта с парой сотен страниц DLE:
Как сделать чтобы их небыло на главной в DLE — но они присуствовали на своем месте?
На главной страницы настроек в админке выберает 3-й тип вывода главной страницы с помощью — статической страницы — main (для нее создаем свой нужный шаблон и поключаем к этой странице).
А в главном шаблоне — main.tpl должна быть строка в месте вывода новостей пагинации.
[available=main]{content>[/available]
2. Для сайтана DLE с тысячами страниц:
В ДЛЕ получается очень много страниц пагинаций ваш.сайт/page/3/. :
Обьязательно, создаем и включаем страницу ошибки — 404.html
3. Правки .htaccess DLE — Только для тех кто понимает зачем это!
Для категрий пагинацию оставляем, а последнии новости и главную пагинацию убираем (/lastnews/page/2/) и (/page/3/)
1. Меняем: RewriteRule ^page/([0-9]+)(/?)$ index.php?cstart=$1 [L] на: RewriteRule 404.html index.php?cstart=$1 [L] 2. Меняем: RewriteRule ^lastnews(/?)+$ index.php?do=lastnews [L] RewriteRule ^lastnews/page/([0-9]+)(/?)+$ index.php?do=lastnews&cstart=$1 [L] на: RewriteRule 404.html index.php?do=lastnews [L] RewriteRule 404.html index.php?do=lastnews&cstart=$1 [L]
* Аналогично можно заблокировать профили пользователей!
Настройка редиректов через утилиту переадресация в DLE:
Делаем ниже представленые адресы с переадресацией на несуществующею страницу (чтобы отдавала ответ 404!), например у меня /page/
/home /index /index.php?cstart=* /index.php?newsid=* /?newsid=* /engine/rss.php /*rss.xml /forum/topic* /xfsearch/* /?do=* /away.php* /forum/away.php* /2012/* /2014/* /index.php?do=feedback&user=*
Оптимизацыя футера DLE:
Оптимизация robots.txt в DLE
User-agent: * Disallow: /*subaction=newposts Disallow: /*do=register Disallow: /*do=lostpassword Disallow: /*do=addnews Disallow: /*do=pm Disallow: /*do=search Disallow: /*do=go Disallow: /*rss.xml$ Disallow: /page/* Disallow: /lastnews/* Disallow: /user/admin/news/page/* Disallow: /?* Disallow: /*utm_* Disallow: /utm_* Disallow: /tel* # DLE arhiv Disallow: /2009/ Disallow: /2010/ Disallow: /2011/ Disallow: /2012/ Disallow: /2013/ Disallow: /2014/ Disallow: /2015/ Disallow: /2016/ Disallow: /2017/ Disallow: /2018/ Disallow: /2019/ Disallow: /2020/ Disallow: /2021/ Disallow: /2022/ Disallow: /2023/ Disallow: /2024/ # ALL BOTS User-agent: Pinterest Crawl-delay: 1 # Crawlers Setup #User-agent: * # Block Ahrefs User-agent: AhrefsBot Disallow: / # Block SEOkicks User-agent: SEOkicks-Robot Disallow: / # Block SISTRIX User-agent: SISTRIX Crawler Disallow: / # Block Uptime robot User-agent: UptimeRobot/2.0 Disallow: / User-agent: 008 Disallow: / # Block Ezooms Robot User-agent: Ezooms Robot Disallow: / # Block Perl LWP User-agent: Perl LWP Disallow: / # Block BlexBot User-agent: BLEXBot Disallow: / # Block netEstate NE Crawler (+http://www.сайт.ру/) User-agent: netEstate NE Crawler (+http://www.сайт.ру/) Disallow: / # Block WiseGuys Robot User-agent: WiseGuys Robot Disallow: /
Продвижение сайта на DataLife Engine

Главное преимущество CMS DLE перед его конкурентами – продуманная структура ядра, позволяющая минимизировать нагрузку на сервер для проектов с высокой посещаемостью. Именно поэтому этот движок для своих сайтов очень часто используют различные медиа: как небольшие онлайн-газеты, так и крупные информационные издания.
Преимущества скрипта DLE
Перед тем, как мы подробно рассмотрим все аспекты внутренней оптимизации сайта на системе управления содержимым DataLife Engine, давайте остановимся на главных достоинствах этого движка.
Почему же большое количество вебмастеров выбирают DLE в качестве основного фундамента для своего сайта?
-
DLE использует технологию AJAX, которая заметно сокращает нагрузку на сервера.
Это лишь малая часть преимуществ DataLife Engine перед другими движками, но все они очень важны для успешного продвижения веб-проектов, созданных на данной CMS.
Подготовка DLE-сайта к продвижению
С чего начать подготовку сайта к продвижению? Естественно, с внутренней оптимизации ресурса и настройки всех его технических моментов. В этой статье мы подробно расскажем, как шаг за шагом улучшить сайт на CMS DataLife Engine, чтобы результаты продвижения оказались максимально эффективными.
Итак, приступим. Первое, что нужно сделать после установки движка, – настроить все служебные файлы, чтобы поисковые роботы корректно сканировали ресурс и в поисковую выдачу попадали только нужные страницы с правильными сниппетами.
Правильный robots.txt и карта сайта на DLE
В robots.txt необходимо запретить к индексации служебные страницы, которые не должны попасть в поиск, и открыть поисковым машинам доступ к тем директориям и файлам, которые, наоборот, должны быть проиндексированы. Правильный robots.txt для сайта на DLE выглядит просто и понятно:
Sitemap: http://путь к вашей карте XML формата
В последних версиях движка файл robots.txt обычно присутствует по умолчанию и менять в нем ничего не нужно. Однако если вы обновляете CMS или скачиваете ее не с сайта разработчика, то велика вероятность, что этот технический файл вам придется создать самостоятельно.
Не забудьте также в строке Sitemap указать полный путь к карте вашего сайта в формате XML (обычно этот файл так и называется – sitemap.xml). В DataLife Engine создать или обновить карту сайта можно в разделе «Карта сайта для Google и Yandex» в административной панели.

Рис. 1. Перейдите в «Другие разделы» админпанели DLE и в специальном подразделе создайте карту сайта для поисковых машин.
При создании обязательно укажите приоритет для категорий, новостей и статических страниц. Чем выше этот приоритет, тем внимательнее к такому документу относится поисковый робот и сканирует его в первую очередь.
SEO-модули для CMS DataLife Engine
Как и большинство самых популярных систем управления контентом, DLE может похвастать широким выбором модулей для настройки и оптимизации SEO-параметров сайта. Причем у этого движка есть специальные модули с расширенными функциями для вывода текста описания категории, заголовка H1 с настройкой их показа в самых разных ситуациях. Речь идет о модуле CatFace.
CatFace
Несмотря на то, что это отличное дополнение для внутренней оптимизации, у него есть один существенный недостаток: контент частично дублируется и сайт может угодить под фильтры поисковых систем. Чтобы этого не случилось, можно, к примеру, в код шаблона main.tpl добавить следующую строку:
Этот код будет выводить содержимое файла txt_cat.tpl с описанием нужной категории и заранее подготовленной разметкой html. Все это содержимое закрепляется конкретно за категорией под номером 102 и не выводится на страницах с полной новостью. Только тут возникает небольшая проблема – если в категории много страниц, то описание будет показываться на каждой из них во время навигации по страницам пагинации. Из-за этого и теряется вся уникальность, но на выручку как раз кстати приходит модуль CatFace, в котором и нужно настроить отображение мета-описания категории только на первой ее странице.
Важно: не забудьте после установки модуля добавить код подключения в основной шаблон main.tpl. Код выглядит так:
Подробная настройка SEO-модуля CatFace наглядно показана в этом видео .
На странице модуля при редактировании категорий рядом с вариантами выбора подробно расписаны пояснения к каждому из них, поэтому у вас не должно возникнуть проблем с настройкой дополнения. В любом случае, вы всегда можете обратиться за помощью к опытным специалистам Юла Group.

Рис. 2. Для каждого пункта в настройках модуля CatFace есть подробные пояснения
После установки и настройки данного модуля для большей безопасности удалите с сервера файл catface_installer.php.
xField Meta
Еще один замечательный модуль для DLE, помогающий повысить эффективность SEO, – xField Meta. Его основная функция – оптимизация страниц дополнительных полей. Для каждого поля можно прописать уникальные title, description, speedbar и keywords. Модуль имеет очень полезную функцию разбивки текста, благодаря чему вы можете выводить описание и над контентом, и под ним.
У xField Meta есть встроенное кэширование, а поиск данных проводится в том числе и по дополнительным полям, что очень удобно и избавляет от необходимости прописывать все вручную. Модуль платный, но стоит всего $7.

Рис. 3. Добавление дополнительных полей в модуле xField Meta
Модули SEO можно использовать как по отдельности, так и совместно. Каждый из них делает свой вклад в оптимизацию веб-ресурса.
Simple SEO
Один из самых полезных и популярных модулей для SEO-оптимизации на DLE – Simple SEO. Он в автоматическом режиме генерирует все самые важные мета-данные. Данный модуль очень прост в настройке и не вносит никаких изменений в базу данных DLE-сайта. Важная особенность этого дополнения – возможность управления индексацией при помощи meta robots. Simple SEO поставляется в двух кодировках (UTF-8 и windows-1251), что весьма удобно.

Рис. 4. Расширенная настройка функции meta robots с детальными разъяснениями по каждому пункту
На вкладке «Другие настройки» можно подтвердить для панелей вебмастера самых популярных поисковых систем (Google. Яндекс, Mail, Bing), что именно вы являетесь владельцем сайта и получать важную статистику о вашем веб-ресурсе в этих сервисах.
Наличие шаблонов для формирования мета-тегов открывают практически безграничные возможности для SEO-оптимизатора, покрывая 99% его потребностей.

Рис. 5. Список шаблонов для создания оптимизированных title, description и keywords в модуле Simple SEO
Установка модуля Simple SEO требует определенных манипуляций с кодом, поэтому мы пошагово опишем процесс установки этого дополнения.
-
После скачивания модуля разархивируйте файлы в отдельную папку.
Похожий принцип установки имеют и другие модули SEO на DLE, но лучше лишний раз прочитать инструкции от разработчиков, чтобы на сайте не возникало ошибок.
Юзабилити сайта DLE
Мощная, но в то же время очень простая, система шаблонизации позволяет создавать любые дизайны для всех типов сайтов. Чем удобнее и понятнее для пользователя интерфейс веб-ресурса, тем дольше времени тот проводит на сайте, улучшая показатель поведенческих факторов.
Для начала обязательно проверьте свой сайт на адаптивность под различные девайсы. Доля интернет-пользователей, которые посещают сайты через мобильные гаджеты, растет стремительными темпами и уже перегоняет стационарные ПК. Чтобы убедиться, что вы не теряете драгоценный трафик из-за неудобства пользования сайтом на мобильных устройствах, проверьте адаптивность DLE-сайта на этой странице сервиса Google.

Рис. 6. Введите адрес своего сайта и подождите несколько секунд, пока сервис просканирует его страницы и покажет результат проверки
Если ваш сайт не оптимизирован под мобильные устройства, срочно позаботьтесь об этом. Наши программисты и дизайнеры в короткие сроки создадут адаптивную версию, и доля мобильного трафика на вашем сайте ощутимо вырастет.
Согласно данным независимой аналитической компании Forrester Research, занимающейся исследованием рынка информационных технологий, из-за плохого юзабилити сайты теряют до 50% пользователей (особенно остро эту проблему ощущают на себе интернет-магазины ), 40% уже не возвращаются на страницы веб-ресурса, с которым они имели негативный опыт взаимодействия. Пользователь должен бегло просканировать сайт взглядом и сразу понять, как им пользоваться и по каким ссылкам переходить для совершения целевого действия.
Очень важная процедура перед запуском продвижения сайта – юзабилити-тестирование, которое показывает, насколько удобно пользоваться сайтом неискушенному посетителю. Запомните: нежелание проводить тестирование или нести дополнительные расходы на улучшение юзабилити неизбежно приведут к тому, что в итоге вы потеряете клиента/покупателя. В целом, шаблоны DLE имеют удобную структуру и пользоваться сайтами на этом движке удобно, но лучше лишний раз перестраховаться и заранее устранить выявленные в ходе тестов недочеты.
Мета-теги title, description и keywords
Важность использования мета-тегов на сайте сложно переоценить. Каждая страница должна содержать информацию с основными ключевыми запросами в заголовке и описании. Предварительно позаботьтесь о создании расширенного семантического ядра, разбитого на смысловые группы (кластеры).
Именно по этой семантике вам предстоит составлять тексты для мета-тегов и вносить их в соответствующие поля SEO-модулей, о которых мы рассказали чуть выше.

Рис. 7. В «Утилитах» админпанели CMS DLE есть специальная надстройка, позволяющая создавать мета-теги для любой страницы сайта.
Вы также можете указывать оптимизированные заголовки и описания на специальной странице встроенной в движок утилиты без необходимости установки дополнительных SEO-расширений.
Увеличение скорости сайта на DLE
Несмотря на продвинутую структуру ядра движка, позволяющую до минимума снизить нагрузку на сервер при больших объемах трафика, поработать над увеличением скорости загрузки страниц все же необходимо. Проверить скорость вашего сайта и получить подробные рекомендации по ее улучшению можно на специальной странице Google .
Скорость работы сайта – один из самых важных факторов, влияющих на ранжирование страниц в поисковой выдаче и к нему нужно отнестись очень серьезно.
Пошаговый список действий по ускорению загрузки страниц сайта мы подробно расписали в нашей предыдущей статье о продвижении интернет-магазинов на OpenCart. Этот чек-лист ничем не отличается от того, который необходим для оптимизации сайта на скрипте DLE, поэтому можете смело им пользоваться.
Безопасность сайта и настройка протокола https
Наличие SSL сертификата на сайте также является одним из главных условий для вывода страниц в топы поисковых систем. Пошаговую инструкцию о переносе сайта на безопасный протокол мы уже публиковали ранее . С ее помощью вы без проблем сможете самостоятельно установить сертификат SSL на свой сайт.
Всегда обновляйте движок до последней версии. Как правило, разработчики оперативно устраняют любые уязвимости, которые могут стать причиной взлома сайта. Для ресурсов, где пользователи проходят регистрацию и указывают личные данные, этот пункт особенно важен.
Нередко бывает, что при установке CMS DLE по каким-то причинам в корне сайта не отображается файл .htaccess, в котором указываются перенаправления с несуществующих или перенесенных страниц, а также другие важные правила. Если это файл затерялся, вы можете скачать отсюда его стандартную версию.
Вывод
DataLife Engine – очень мощный и быстрый движок для любых типов сайтов. Код DLE отлично оптимизирован, благодаря чему сайты на этой CMS могут выдерживать большой наплыв трафика. В панели управления DLE практически к каждой настройке идут расширенные пояснения, поэтому с оптимизацией могут справиться даже начинающие вебмастера, которые до этого ни разу не работали с этим движком.
Однако для более тщательной настройки всех технических параметров и внесения правок в код требуются определенные навыки и опыт. Для большего эффекта от продвижения и экономии времени лучше доверить всю эту рутинную работу SEO-специалистам.
И самое главное: не важно, на каком движке сделан сайт и насколько хорошо он оптимизирован – если нет качественного контента с грамотной внутренней перелинковкой, это станет причиной низкого трафика и эффективность всего продвижения окажется под угрозой.
Позаботьтесь о создании расширенного семантического ядра и качественном наполнении сайта. Все эти задачи наша команда может взять на себя и в короткие сроки вывести любые поисковые запросы на первые позиции в топы поисковых систем. Заказывайте продвижение, наполнение и поддержку DLE-сайта в Юла Group через форму в конце страницы.
SEO оптимизация DLE: Часть 1 — Оптимизация заголовков Title

Привет, друзья. Решил начать цикл публикаций про засеошивание Datalife Engine. При работе с движком периодически выявляется много нелепых недоработок со стороны разработчиков. Поэтому приходится искать и разбираться с ошибками, а потом править код ядра самому.
Сегодня мы поговорим о «правильных» заголовках title. Цель данного руководства:
- Сделать все заголовки сайта уникальными и, как результат, избавиться от дублей
- Улучшить заголовки с точки зрения восприятия и внешнего вида
- Оптимизировать заголовки с точки зрения SEO
- Бонус — уникализировать метаописание description
Для начала нам необходимо оценить масштаб трагедии и проверить сайт на наличие ошибок. Это можно сделать при помощи инструментов для веб-мастеров от Google в разделе Оптимизация -> Оптимизация HTML.
Я более чем уверен — ошибок там очень много!
Пост обновлен 5 мая 2014 года:
Обновлены вносимые в движок изменения, добавлена поддержка новых версий движка.
Актуально для следующих версий DLE: 7.x, 8.x, 9.x, 10.x!
Другие части SEO-руководства:
Часть 2, Борьба с дублированием контента — https://alaev.info/blog/post/2400
Часть 3, Особенности внутренней оптимизации движка — https://alaev.info/blog/post/3294
Часть 4, Исправление для версий DLE 9.3, 9.4, 9.5, 9.6 — https://alaev.info/blog/post/3513
Уникализация заголовков 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» в админке
НАХОДИМ:
if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']);
if ( $metatags[‘header_title’] ) $metatags[‘title’] = stripslashes($metatags[‘header_title’]);
ЗАМЕНЯЕМ НА:
if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']) . $page_extra;
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 и т.д.
НАХОДИМ:
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 ($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']) > 1 ) { $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
Первый вариант — «на скорую руку» для тех кто не эстет.
НАХОДИМ:
meta name="description" content=" " />
ЗАМЕНЯЕМ НА:
meta name="description" content=" " />
Теперь на страницах пагинации категорий и в полных новостях на страницах пагинации комментариев будет уникальный meta description, в него будет добавляться в конце » » Страница 123″.
Вариант №2
Второй вариант — более интересный за счет того, что вместо » » Страница 123″ можно указать что-то свое, например, как сделал я — » стр. 213″.
НАХОДИМ:
if (intval($_GET['cstart']) > 1 ){ $page_extra = ' » '.$lang['news_site'].' '.intval($_GET['cstart']); } else $page_extra = '';
ЗАМЕНЯЕМ НА:
if (intval($_GET['cstart']) > 1 ){ $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 description. intval($_GET[‘cstart’] — это номер страницы, а ‘ стр. ‘ — это собственно текст.
НАХОДИМ:
meta name="description" content=" " />
ЗАМЕНЯЕМ НА:
meta name="description" content=" " />
Все готово. Теперь повторяющихся метаописаний больше не будет.
Улучшение 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
НАХОДИМ:
$metatags['title'] = $nam_e . ' » ' . $metatags['title'];
$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 . ‘ » ‘ . $config[‘home_title’];
ЗАМЕНЯЕМ НА:
if ($titl_e) $metatags['title'] = $titl_e;
if ($titl_e) $metatags[‘title’] = $titl_e;
Теперь вместо стандартных title «Название публикации — Название сайта» и «Название категории — Название сайта» будут выводиться «Название публикации» и «Название категории» соответственно.
Оптимизация title для DLE 9.x (кроме 9.0), 10.x
НАХОДИМ:
$metatags['title'] = $nam_e . $page_extra . ' » ' . $metatags['title'];
$metatags[‘title’] = $nam_e . $page_extra . ‘ » ‘ . $metatags[‘title’];
ЗАМЕНЯЕМ НА:
$metatags['title'] = $nam_e . $page_extra;
$metatags[‘title’] = $nam_e . $page_extra;
НАХОДИМ:
$metatags['title'] = $titl_e . $page_extra . ' » ' . $config['home_title'];
$metatags[‘title’] = $titl_e . $page_extra . ‘ » ‘ . $config[‘home_title’];
ЗАМЕНЯЕМ НА:
$metatags['title'] = $titl_e . $page_extra;
$metatags[‘title’] = $titl_e . $page_extra;
Теперь все категории будут содержать в title только название категории, а публикации, соответственно, только название публикации.
Дорогие друзья. Спустя несколько лет после того, как я написал данный пост, который вы читаете, у меня появился отдельный материал, посвященный seo-оптимизации title, исследованию его свойств: максимальной длинный, стоп-слов, разбивающих пассажи, как и какие ключевые слова вписывать и т.д.
Вам обязательно надо его прочитать!
Продвинутая SEO оптимизация заголовков title категорий
Актуальность: Все версии DLE. Проверено на 7.x, 8.x, 9.x, 10.x.
Идея следующая. Представим ситуацию, у нас есть категория, мы ее продвигаем по определенным запросам, следовательно в настройках у нее заполнено поле «Метатег title», и скорее всего этот title у нас длинноват и не очень красив.
Вот живой пример. Есть категория с именем «Белковые диеты» (это имя отображается в speedbar’е, в полной новости, в списке категорий к которым эта новость относится и т.д.), а метатег title у этой категории такой «Белковые диеты — белковая диета для похудения, отзывы худевших, рецепты, меню».
Так вот, если «Метатег title» заполнен, то в тайтл на сайте идет именно он, а не имя. И при наличии пагинации новостей в категории, тайтл нашего сайта будет не очень красив, я говорю о том, что для каждой страницы будет выводиться вот этот длинный засеошенный заголовок и приставка с номером страницы.
Предлагаю сделать так, чтобы оптимизированный тайтл (поле «Метатег title» категории) выводился только для первой страницы категории, а на всех остальных выводился приличный короткий тайтл (поле «Имя» категории).
Какие проблемы решаем:
- Не корректное с точки зрения SEO формирование заголовков title для страниц пагинации сайта
Открываем файл /engine/engine.php
НАХОДИМ:
if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']);
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);
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!

Александр «АлаичЪ» Алаев
Вот уже 18 лет я профессионально занимаюсь созданием и продвижением сайтов и 13 лет с удовольствием пишу в любимый блог. Создал заслужившие доверие в seo-сообществе программы FastTrust и ComparseR и известный сервис для проверки траста сайтов CheckTrust.ru.
В 2014 основал веб-студию «АлаичЪ и Ко» в Краснодаре: 1 место в рейтинге агентств интернет-маркетинга (Рейтинг Рунета), 2 место в рейтинге SEO-компаний (CMSmagazine), 12 место в рейтинге известность бренда SEO-компаний в России (SeoNews).
Выступаю на профильных конференциях (All In Top, SEO Conference, SEMPRO, Baltic Digital Days). Веду канал в telegram про seo и бизнес. SEO-специалист года 2019 и 2020 (Sape).
![]()
![]()
Профессиональный технический аудит и рекомендации по оптимизации вашего сайта.
Тот самый необходимый «фундамент» для успешного продвижения.
Комплексный подход к решению поставленных задач: достижение топ-10 и увеличение трафика на сайт. В стоимость уже включены полный технический аудит и оптимизация сайта.
У вас недостаточно знаний и нужны ответы на вопросы?
Интересует мнение эксперта или надо проверить подрядчика?
Вы задаете вопрос — я отвечаю!
Проведу подробное исследование вашего сайта и основных конкурентов, опубликую материал на блоге для обсуждения и коллективного поиска новых идей.
Другие посты из категории Datalife Engine:
- Модуль Simple SEO – оптимизация Title, мета-тегов и других элементов для DLE Datalife Engine
- Модуль DonBot — настройка индексации сайта при помощи мета-тега robots для DLE Datalife Engine
- Микроразметка рейтинга новостей в DLE для Google по версии schema.org
- Хлебные крошки в DLE — модификация speedbar по версии schema.org с помощью микроданных или RDFa
- LinkEnso PRO – модуль перелинковки v2.3 NEW для DLE Datalife Engine
- Чистое обновление DLE – обновляемся правильно
- Правильный robots.txt для DLE – какой он?
- Модуль TagFace – SEO оптимизация тегов для DLE Datalife Engine
- Запуск онлайн магазина модулей для DLE — store.alaev.info
- Интеграция пользовательского поиска от Яндекс и Google в DLE Datalife Engine
Я начал запись своего обучающего курса по seo-продвижению.
В каждом видео я разбираю какую-то одну важную тему, и делаю это последовательно, в порядке, подходящем для изучения с нуля. Видео выкладываются раз в неделю – по средам. Я думаю, весь курс будет состоять из 50-70 роликов, так до конца еще далеко, а значит самое время подписаться и начать изучение вместе со мной.
В блоке слева всегда будет выводиться самое свежее видео курса. Ссылки: на мой канал, на плейлист обучения.
Комментарии: 272 Написать комментарий
Bubamara (3 комм.)
Спасибо автору. Подправил код CMS, заголовки стали выглядеть более удобоваримыми. Жду новых публикаций!
Laksamana (3 комм.)
Релиз DLE 9.3 вышел 14 мая 2011, в нем по первому вопросу исправлено.
Да, я специально скачал 9.3 и установил на локалке. Исправились, молодцы 😉 И еще по некоторым моим замечаниям исправились, но тем не менее много недоработок оставлено. Я об этом напишу скоро, вдруг услышат меня и исправят в следующем релизе!
zver93 (7 комм.)
Как несколько ключей впихнуть так, чтобы они не отображались в названии фильма в полной новости, но были в титле?
Если я правильно понял, то вам надо сделать H1 заголовок «Название Фильма», а Title (для поисковиков, например) сделать с ключевыми словами. В таком случае, заполняем название новости так, как хотелось бы чтобы это выглядело для пользователей на сайте (H1), а во вкладке «Дополнительно» при публикации новости заполняем title так как хотелось бы чтобы видели поисковики.
zver93 (7 комм.)
АлаичЪ, а нельзя этот процес както автоматизировать?
Вот есть такой вариант: Открываем /engine/engine.php и находим:
} elseif ($titl_e) { $metatags['title'] = $titl_e . $page_extra;
ЗАМЕНЯЕМ на:
} elseif ($titl_e) { $tit_extra = ' скачать бесплатно '; $metatags['title'] = $titl_e . $tit_extra . $page_extra;
Соответственно, в конце каждой новости будет добавлено содержимое переменной $tit_extra.
zver93 (7 комм.)
Алаичь, огромнейшее спасибо Вам и Вашему блогу. Был рад пообщаться, спасибо за науку, сам почему-то до этого не додумался).
zennuk (1 комм.)
Хороший пост, автору большое спасибо. А как в версии 9.4 нужно поправлять или нет Титлы
А я пока не знаю, еще не устанавливал себе 9.4. Но мне кажется, что первая часть поста не будет иметь смысла, а вот вторая, которая идет после «Теперь небольшой бонус, дополнение к предыдущим изменениям.» надо будет править.
zennuk (14 комм.)
На днях установил для нового сайта 9.4 так что они там тоже исправились, наверное читают твой блог 🙂 И на том спасибо за пост, все исправил в старых версиях.
Молодцы, хоть теперь, спустя столько лет, начали думать про важность SEO! Надеюсь, что 10.x версия будет совсем хороша и изначально оптимизирована. А блог наверняка читают, потому что одно время шли переходы с их закрытого форума 😉
MIRREXX (13 комм.)
Добрый день! Может Я неправильно понял, но Title генерируется автоматически или его обязательно вводить вручную? Можно ли осуществить чтобы в Title выводилось заголовок новости и больше ничего лишнего в автоматическом режиме?
title генерируется автоматически, то есть, если не заполнили вручную поле title, то содержание для него берется из заголовка новости. А чтобы выводился только заголовок и ничего лишнего, прочитайте то что в посте написано ниже строчки «Теперь небольшой бонус, дополнение к предыдущим изменениям».
MIRREXX (13 комм.)
Спасибо большое все работает! Вторую часть воспринял не всерьез а она была самая главная 🙂
Стас (9 комм.)
Здравствуйте, у меня такая проблемка. Ко Всем страницам: тегам, новостям, (кроме категорий) приписывается с зади «Название сайта». Например: [b]Скачать Музыку[/b] >> [u]Бесплатная музыка у нас.[/u] Скачать Музыку это [b]Title[/b] новости а Бесплатная музыка у нас. = это можно сказать [b]Title[/b] сайта. Я хочу что бы Title сайта не показывался в новостях и Ключевых Тегах. Как это Сделать. В Ключевых Словах Показуеться таким образом:
Читаем и выполняем все, что написано ниже подзаголовка «Теперь небольшой бонус, дополнение к предыдущим изменениям.»
jimm (2 комм.)
Как сделать так, чтобы в Title полной новости была следующяя сборка
Paha (2 комм.)
Добрый день. А где можно поменять переменную $page_extra? У меня выдает лишние символы, заголовок вместо: «Новости Страница 2» Выглядит как: «Новости; &amp;raquo; Страница 2»
Открывайте /engine/engine.php и ищите там что-то типа «&amp;raquo;» и заменяйте на «»» и все будет окей!
Paha (2 комм.)
супер, спасибо!
vadim3553 (3 комм.)
Подскажите, как изменить title в каждой из страниц page/2/, page/3/ и т.д. Сайт на dle 9.3.
Не совсем понял, вам надо индивидуально менять тайтлы для каждой из таких страниц или как?
vadim3553 (3 комм.)
да, именно индивидуально, что не писалось в конце Страница 2, 3 , 4 и тд а чтобы я сам мог там написать, что угодно. как это сделать?
Никак без специальной разработки этого не сделать. Это уже выше где-то на блоге обсуждалось, я имею ввиду невозможность данного мероприятия.
Денис (34 комм.)
Привет всем участникам блога! У меня вопрос не про title, но про оптимизацию. У меня на сайте есть категории, и я под каждую категорию написал уникальный текст. То есть каждый текст соответствует теме категории. Так вот этот текст у меня собран весь в одном файле, и выводится на каждой странице по одному через тег [category=#]. Если просматривать главную страницу или страницу категории через исходный код, то видно, что имеется один разрешонный текст и большой пустой промежуток именно тот, где скрыты остальные тексты. Как это сказывается на оптимизации, и как к этому относятся поисковики? Заранее спасибо.
Никак это не сказывается, пустой промежуток он только визуально, для робота его как будто и нет. PS Рекомендую для ваших целей воспользоваться моим модулем CatFace — он как раз создан для оптимизации категорий, а именно добавления текстов.
Денис (34 комм.)
Спасибо, проблема решилась! Модуль СУПЕР! Но всё же как к таким пробелам относятся поисковики? И вот теперь такой вопрос: У нас оптимизирована главная страница категории, — это понятно. А вот остальные страницы с адресом /page/2/, page/3/ и т.д. ведь они будут дублировать текст и заголовок для остальных страниц , которые вбиты в модуле. С этим как быть? Как отнесутся к этому поисковики?
Про пробелы ответ выше. А на страницах /page/2/, page/3/ и т.д. текст не будет дублироваться, внимательно изучите спецификацию модуля, там есть соответствующие настройки, чтобы текст показывался только на первых страницах.
Денис (34 комм.)
Я про вывод описания только на главной понял. Я про то что если я заполню поле «Описание для остальных страниц:», это описание будет отображаться начиная с /page/2/ и далее. Или дубли относительно не главных страниц не считаются дублями? Поле «Описание для остальных страниц:» будет заполнено другим текстом, в отличии от текста на главной.
Ну да, описание для остальных страниц будет дублироваться. Все равно для каждой страницы не предусмотришь уникального описания 😉 Это я сделал для того, чтобы, например, сделать краткое описание категории и вставить туда необходимые ссылки.
Денис (34 комм.)
Значит целесообразно будет в robots.txt запретить страници, а именно прописать Disallow: /page/ — для главной Disallow: */page/* — для категорий И тогда у нас останется только главная и главная категоий что придаст им вес.
Ну, во-первых, обе указанные вами директивы в данном случае идентичны, достаточно будет прописать только: Disallow: /page/ Это запретит все url с вхождением /page/ А во-вторых, не имеет смысла закрывать эти страницы. Просто заполните описание для главных страниц, а остальные оставьте пустыми и ничего закрывать не надо будет. Но в любом случае вес не убавиться и не прибавится. Хотя скорее даже убавится, так что.
Денис (34 комм.)
Спасибище огромное! Удачи вам и вашему блогу
Тимур (6 комм.)
Вопрос для АлаичЪа! Как избавиться от «Страницы с повторяющимися заголовками (теги title)»,на движке дле 9.4 /tags/интересная-новость.html /ид-интересная-новость.html
Впервые вижу такую конструкцию /tags/интересная-новость.html Насколько мне известно, модуль тегов выводит только список новостей соответствующих определенному тегу, а при переходе к полной новости получаем следующую конструкцию /ид-интересная-новость.html
Александр (1 комм.)
Спасибо за полезную информацию. А как уникализировать заголовки страниц пагинации для lastnews (последние новости на сайте)? Предложенный вами метод не работает в этой категории (версия dle 7.5)
Проверил у себя (dle 8.2) модуль lastnews — все нормально, тайтлы уникальны, номер страницы подставляется. Ничего, кроме описанного в данном посте, я не делал, так что проверьте внимательно, все ли выполнили как написано?
Виталий (11 комм.)
Привет всем! SOS. Подскажите, будте любезны, какой использовать тег на DLE9.2 в /engine/engine.php Ищем строку: $metatags = << Перед ней вставляем следующий код: if ( $newsid ) $download = "Скачать: "; Далее, ищем строку: Заменяем на: Не могу сообразить, чтобы в верхнем окне браузера выводилось «Скачать *категория* *титл* бесплатно». Заранее жму 5 и жду помощи.<>
Так в чем проблема? Вы проделали операции, которые сами в комментарии описали? Что получилось?
Виталий (11 комм.)
Привет и с наступающим! Спасибо за отклик. Нет, немного не так. У меня выводиться в окошке браузера «Скачать / Татанка / Tatanka (2011/DVDRip) / бесплатно», а я ищу «Скачать / Фильм / Татанка / Tatanka (2011/DVDRip) / бесплатно». Подскажите, с ув. Виталик.
Не знаю где вы и что меняли, но вот вариант: Открываем /engine/engine.php и ищем:
if ($nam_e) { $metatags['title'] = $nam_e . $page_extra;
Заменяем на:
if ($nam_e) { $metatags['title'] = "Скачать фильм " . $nam_e . " бесплатно " . $page_extra;
Это при условии, что вы не заполняете в каждой новости поле title, а если заполняете, то сделайте так: Открываем /engine/engine.php и ищем:
} elseif ($titl_e) { $metatags['title'] = $titl_e . $page_extra;
Заменяем на:
} elseif ($titl_e) { $metatags['title'] = "Скачать фильм " . $titl_e . " бесплатно " . $page_extra;
Виталий (11 комм.)
Подробнее вот что я делал, сейчас у меня такое положение: Файл *такой-то* download А я пытаюсь сделать: Файл *категория* такой-то* download Понимаете? if ( $newsid ) ; if ( $newsid ) $download = «Файл «; $metatags = <<$metatags = " /> HTML; if (($do != "cat") OR ($dle_module != "main")) { $metatags .= $cat_info[$category_id]['name']; HTML; } $metatags .= HTML {$metatags['title']} downloadtitle> HTML;
Виталий (11 комм.) В полных новостях всё отлично, но, когда прокручиваешь главные страницы, выходит в браузере категория дважды и страница. Вот такие пироги. Вот пример, убедитесь — http://lunacity.ru/ Виталий (11 комм.) Ну и на этом спасибо, пусть будет так. Я надеюсь, в дальнейшем могу к Вам обращаться. (шутка) Пока есть денежные знаки спасибо Ваше нам до сра. 🙂 АлаичЪ, просьба ненужную информацию, «хлам» и пример с сайтом поудаляйте и ещё раз спасибо! Оставлю как есть, т.к. языком php не владею. Дмитрий (44 комм.) Здравствуйте. Хотел бы уточнить у Вас такой момент. Известно, что анкоры внутренних ссылок должны быть уникальными (в данном случае речь идёт об уникальности в пределах одного сайта). Можно ли использовать в качестве разбавления анкоров ссылок, находящихся в блоке «Похожие новости», название раздела? То есть текст ссылки при просмотре главной страницы или раздела ― «Игра Empire Story», а в блоке «Похожие новости» ― «Игра Empire Story / Стратегии». Является ли это положительным фактором передачи веса и, как следствие, ранжирования? Да, желательно использовать уникальные анкоры. То что вы предлагаете, интересный вариант, думаю, это неплохо и стоит попробовать. Статический вес будет передаваться тот же что и раньше, на счет динамического, не знаю, все равно повторений будет много. Короче говоря, я не уверен, что это может положительно сказаться, но уверен — хуже не будет. Попробуйте, а там и узнаем 🙂 Дмитрий (44 комм.) Спасибо, попробую. И такой вопрос: можно ли выводить блок «Похожие новости» до заголовка основной статьи? Или это не имеет значения? Просто увидел подобную рекомендацию на одном из форумов. Ваше мнение по этому поводу? Можно выводить, только я не думаю, что это даст какой-то эффект. Да и пользователям будет не очень удобно, хотя, наверное, повысит глубину просмотра сайта. arsenaleli (14 комм.) Доброе время суток всем. Вот я прочёл вашу статью и стал колдовать над своим сайтом, у меня версия 9.3 и по моим догадкам там всё сделано так как написано в вашей статье. У меня вот такое в engine.php но проблема в том что когда я заполняю тег титле он больше не меняется с переходами по сайту. А вот когда у меня там нечего не написано, всё норм, только на латыне. Помогите если кто сможет, чтоб было всё по русски и можно свой тег вписывать, например много софта и.т.д. Спасибо за внимание ! arsenaleli (14 комм.) Я уже второй день пытаюсь настроить заголовок титле но нечего не выходит. В заголовке выносит только то что написано в настройках титле в директории engine.php а если там совсем нечего не писать показывает только URL адрес страницы например (site.ru/soft/icq) вот так всё у меня. И чё делать не знаю, если кто подскажет заранее спасибо. Разумеется ничего не будет работать. У вас в самом конце
Ну можно и так 🙂 Все правильно получилось как хотели?
Виталий (11 комм.)} if (intval($_GET['cstart']) > 1 ){ $page_extra = ' » '.$lang['news_site'].' '.intval($_GET['cstart']); } else $page_extra = ''; if ($nam_e) { $metatags['title'] = $nam_e . $page_extra . ' » ' . $metatags['title']; $rss_title = $metatags['title']; } elseif ($titl_e) { $tit_extra = ' скачать бесплатно '; $metatags['title'] = $titl_e . $tit_extra . $page_extra; ' » ' . $config['home_title']; } else $metatags['title'] .= $page_extra; if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title']) . $page_extra; if (! $rss_url) { if ($config['allow_alt_url'] == "yes") { $rss_url = $config['http_home_url'] . "rss.xml"; } else { $rss_url = $config['http_home_url'] . "engine/rss.php"; } $rss_title = $config['home_title']; } $metatags = HTML meta http-equiv="Content-Type" content="text/html; charset= " /> title>site.rutitle>
arsenaleli (14 комм.)
Класс! Большое спасибо! Классный у вас форум! Буду обращаться с вопросами если такие будут. С вашего позволения конечно. Ещё раз спасибо!
arsenaleli (14 комм.)
Доброе время суток! У меня ещё вопрос. У меня такой код в engine.php:
if (intval ($_GET['cstart']) > 1 ){ $page_extra = ' » '.$lang['news_site'].' '.intval ($_GET['cstart']); } 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; if (! $rss_url) { if ($config['allow_alt_url'] == "yes") { $rss_url = $config['http_home_url'] . "rss.xml"; } else { $rss_url = $config['http_home_url'] . "engine/rss.php"; } $rss_title = $config['home_title']; } $metatags = HTML meta http-equiv="Content-Type" content="text/html; charset= " /> title>{$metatags['title']}title>
На вид всё нормально, но проблема вот какая. При входе на главную страницу у меня заголовочный тег title URL сайта просто написано site.ru. Я перехожу в какую нибудь категорию сайта и title меняется, но отображается только название категории без title главной страницы. После я вхожу на страницу новости и там всё меняется, получается название новости и главный title, а title категории исчезает. Получается всё вот так: Я вхожу на главную страницу и title у меня: site.ru Я вхожу в категорию и title у меня: Фильмы (без site.ru) Я вхожу на страницу фильма и у меня title: Стормхауз / Тюрьма для призрака / Stormhouse (2011) >> site.ru (без title категории) Если можно чтобы получилось всё по порядку, например вот так: Я вхожу на главную страницу и у меня title такой какой я хочу для главной страницы, например: Развлекательный портал site.ru Я вхожу в категорию и title у меня: Фильмы >> Развлекательный портал site.ru Я вхожу на страницу фильма и у меня title: Стормхауз / Тюрьма для призрака / Stormhouse (2011) >> Фильмы >> Развлекательный портал site.ru Как это можно сделать? Заранее благодарю вас за помощь!
Я смотрю вы уже наворотили делов, сами не понимая, что делали. И разбираться с этим сейчас бессмысленно. Предлагаю вам два варианта: обновить движок до последней версии, в процессе заменив все файлы на новые; или взять из дистрибутива файл engine.php от текущей версии DLE (которая сейчас у вас установлена) и залить вместо того, что у вас сейчас на сервере. Вообще, то что вы хотите и так стоит по умолчанию в DLE, так что выполнив один из двух вариантов, предложенных мной, вы получите то что вам надо!
Drabadan (7 комм.)
Здравствуйте! У меня к Вам вопрос и интересует ваше мнение. Я хотел бы реализовать следующий title на страницах своего сайта: сначала title самой страницы, потом название категории, потом имя подкатегории (если она будет присутствовать в категории, к которой пренадлежит страница) и последнее, в конце это какой либо бренд, либо название сайта. Подскажите, пожалуйста, как этакое реализовать и интересует ваше мнение по этому поводу с точки зрения оптимизации, такой title есть хорошо или плохо?
Практически тоже самое предлагает движок по умолчанию, даже редактировать не надо будет. Стандартная раскладка такая: Название новости < Название категории < Название сайта. Из того что вам надо здесь отсутствует только название подкатегории. С т.з. оптимизации — это не лучший вариант, лучший вариант это тот, что я предложил, иначе я бы его и не предлагал =)
stalker-xxl (2 комм.)
Странно, у меня версия 9.5 — так по умолчанию head title генерится вот так: «название новости — название сайта», а вот title категории не вставляется, хоть убей. Как можно это исправить?
arsenaleli (14 комм.)
Добрый вечер, я с таким вопросом. У меня теги titl на движке почти по умолчанию, я только добавил: if ($subaction == «showfull») < $metatags['title'] = "Скачать ".str_replace ( ' » '.$config['home_title'] , " " , $metatags['title'] ). "бесплатно"; >Это для оптимизации новостей. Но проблема в том что у меня titl главной страницы site.ru если я его изменяю например (много софта на site.ru) то меняются все titl вместе, и категории и новости становятся (много софта на site.ru). подскажите пожалуйста как это исправить, чтобы для главной страницы был отдельный titl по моему желанию а не site.ru а остальные остались бы так как есть. Спасибо за внимание ! И кстати движок 9.5
Я думаю вам надо посмотреть вот этот пункт — «Теперь небольшой бонус, дополнение к предыдущим изменениям.»
arsenaleli (14 комм.)
Да это всё хорошо, но всё остаётся по прежнему. Таитл на главной странице по умолчанию, я его контролировать не могу а на категориях и новостях таитл такой какой мне нужен. Если я меняю главный таитл: $metatags = <<$metatags = HTML
ВЫШЕ добавить: 123 заменить на id нужной категории. Спасибо, получилось, только можно изменить что бы было — «Название категории бесплатно» — а то сейчас получается «Название категории » Страница 2 бесплатно». Тогда можно такую строку попробовать: arsenaleli (14 комм.) Это опять я вас побеспокою. В админке как я знаю только категории меняются, а вот главная страница никак. Мне надо чтобы на главной странице был свой таитл а на категориях и новостях свой. На категориях и новостях у меня всё норм, но вот на главной не могу довести до ума. Куда надо вписать нужные мне слова, например: Много софта на сите.ру Только чтобы этот таитл отображался на главной а не на всех страницах. Так заходим в админку, наживаем «Настройка системы» и первой же строчкой будет пункт «Название сайта:» вот в него и надо написать то, что вы хотите. Это будет тайтлом для главной страницы! arsenaleli (14 комм.) Подскажите пожалуйста, как уникализировать title страниц с комментариями и метаописания в dle 7.3? Описанные выше способы не подходят, т.к. в этой версии нет переменной $page_extra. Обновить движ не реально, т.к. много хаков и модулей. Возможно ли как-нибудь прописать эту переменную в движке? А в посте про это все написано. Пункты, которые помечены «Для версий движка ниже DLE 9.2» подходят и для 7.3. Как раз переменную $page_extra мы сами сделаем и будем ею оперировать, все написано, прочитайте внимательнее. Аркадий (4 комм.) Здравствуйте! В статье вы писали как уникализировать содержимое тега meta name=»description» для «страниц пагинации». У меня есть один вопрос. УРЛы у меня на сайте имеют вид http://САЙТ.ru/2012/04/19/название_поста.html и создается много страниц вида http://САЙТ.ru/2012/04/19/, http://САЙТ.ru/2012/04/ Гугл Вебмастер показывает что на таких страницах одинаковое содержимое тега meta name=»description». Как его уникализировать, если это возможно? И еще вопрос. А может возможно вообще закрыть такие страницы от индексации? Но не понятно, как это сделать, т.к. если закрыть в robots.txt к примеру http://САЙТ.ru/2012/04/, то тогда закроются и все посты за эту дату. Уникализировать описание страниц архива не вижу смысла, эти страницы надо вообще закрывать от индексации. Как это сделать читайте в третьей части руководства. Сергей (6 комм.) Хочу выразить свою благодарность автору данного топика. Давно меня этот вопрос мучил. Спасибо большое, привел заголовки в порядок, Dle 9.0! Владимир (17 комм.) Как много тут всего написано. Автор вообще наверное уже с нами запарился. А теперь по теме: Для Тайтлов добавил нужные слова по описанному выше примеру. Теперь хочу что бы Дискрипшн и ключевые слова тоже генерировались по шаблону. Сайт с онлайн фильмами. Как сделать так что бы: дискрипшн был — «смотреть фильм ‘название’ онлайн, (остальные символы подставляются из описания к фильму)» — сейчас просто весь дикспришн это 200 первых символов описания фильма. кейвордс были — «смотреть фильм ‘название’ онлайн, . , ‘название’ бесплатно» Спасибо за отзывчивость. По описанному же выше примеру можно по аналогии сделать и для дескрипшена и для кейвордов то, что вы хотите. А вообще не вижу в этом большого смысла, особенно в кейвордах. Надо написать очередной пост оптимизации ДЛЕ на тему кастомизации Тайтлов, Описаний и Ключевых слов. Сергей (7 комм.) АлаичЪ, большое спасибо за статью, решил эту проблему под 7.3. Можно у вас узнать, как у спеца по php, возможно ли сделать так, чтобы при переходе на следующие страницы комментариев не выводилась вся статья, а только комменты? Тут возникает проблема дублирования контента на каждой странице с комментариями. К примеру, у меня много таких статей, где более 30 страниц с комментариями к каждой. Статьи большие по объему и в топе по ВЧ. Получается так, что текст статьи постоянно дублируется. Думаю, как бы со временем не попасть под фильтр за дублирование контента внутри сайта. Понимаю, что ничего невозможного нет, но насколько это сложно, т.е. не прийдется ли переписывать весь движок)))? Да, можно сделать, никаких проблем. Открываем engine/modules/show.full.php Находим: Эта строка может отличаться в разных версиях движка, так что ищите по идентификатору $tpl->set( ‘ Таким образом я сделал, чтобы когда начинается пагинация комментариев, выводился не полный текст новости, а анонс (шортстори). Думаю, это лучше, чем не выводить ничего. Павел (2 комм.) Здравствуйте, мне нужно уникализировать TITLE комментариев и страниц, которые формируются тегом разрыва страниц В 9.6 и так все должно быть нормально с нумерацией в тайтлах. Разве нет? о_О В том то и дело что нет (( Обычные страницы типа http://site.com/page/2/, http://site.com/page/3/ нумеруются нормально а вот если идет новость разделенная Ну, блин, разработчик бракодел, чтоб его! Действительно, вы правы, есть проблема. И я ее решил! Открываем engine.php и находим: Заменяем на: surcho (27 комм.) Но тогда для всех страниц пагинации комментариев заголовки получаются абсолютно одинаковыми. Что делать? В самом посте этот пункт сделан чуть по другому, а здесь уже по другому. Какой использовать? В таком случае надо выбирать меньшее зло 🙂 Или одно, или другое. Исправил как написано у вас, в вебмастере все равно пишет повторяющиеся мета описание /obzori/ /obzori/page/2/ /obzori/page/3/ /obzori/page/4/ вот енджин http://pastebin.ru/GNVJ06E3 А на самих этих страницах метаописание разное? Если да, то какие проблемы? А панель вебмастера не обновляется моментально, иногда надо подождать 2-3 недели, прежде чем поисковик обнаружит изменения. kirill (4 комм.) Уважаемый АлаичЪ, не подскажете ли как можно сделать свой description для каждой статьи свой, например мне надо чтоб на всех новостях он не генерился автоматом из новости, авыводился примерно следующим образом СВОЙ ТЕКСТ — ЗАГОЛОВОК — СВОЙ ТЕКСТ Например можно это сделать вручную 🙂 Или открыть engine.php и найти строку: $metatags = Спасибо Вам, помогло, в ручную конечно не вариант изменять, тем более если новостей на сайте куча, а это то что доктор прописал. Только пришлось не много самому попдправить, переменная $nam_e не выводила заголовок, просто сменил её на $metatags[‘title’] вот так — if ($subaction == «showfull») $metatags[‘description’] = ‘текст’ . $metatags[‘title’] . ‘текст’; Да и спасибо Вам за такой чудесный блог, ни где не встречал такого количества полезной инфы по оптимизации дле, без всякой лишней воды 🙂 Даниэль (16 комм.) Наконец нашёл время немного посмотреть на оптимизацию своего faq-сайта: ~3000 страниц в индексе. Повторяющееся метаописание -1088 Повторяющиеся заголовки — 312 404 ошибки — 178 кошмар))) Интересно, что хуже всего для СЕО? 🙂 Да, Паша, поздно спохватился =) Но хорошо, что хоть руки дошли. Так что кури теперь мои мануалы по оптимизации и вноси правки. А хуже всего для seo — это дубликаты title. ПафНутиЙ (124 комм.) Мануалы твои я ещё с публикации второй (или первой, не помню) части читаю. Впринципе правки минимальны в моём случае. Посмотрим теперь что скажет гугл. После правок руками по ссылкам ходил — вроде всё ок, редиректит куда надо. Теперь буду заниматься редизайном, яша вроде бы всё перетащил со старого домена. После внесения правок надо подождать недели 2-3 чтобы увидеть изменения в панели вебмастера Гугла. Если количество ошибок уменьшится, значит все правильно сделал =) Александр (2 комм.) А как можно сделать чтобы в полной новости вместо title выводилось то, что прописали в метатег title при публикации новости? Надо проделать вот этот пункт «Улучшение SEO характеристик заголовков title». Я имел ввиду немного другое. Извиняюсь, что сразу не пояснил. В шаблонах shortstory.tpl и fullstory.tpl стоит тег if ($category_id == '123') $metatags['title'] .= " бесплатно";
Maksik (2 комм.)if ($category_id == '123') $metatags['header_title'] .= " бесплатно";
Всё Ок! Большое спасибо!
Сергей (7 комм.)$tpl->set( '', stripslashes( "
// вывод на страницах комментов не полного текста новости, а из шортстори if (intval($_REQUEST['cstart']) >= 2) { $tpl->set( '', stripslashes( "
Павел (2 комм.)if (intval($_GET['cstart']) > 1 ){ $page_extra = ' » '.$lang['news_site'].' '.intval($_GET['cstart']); } else $page_extra = '';
if (intval($_GET['cstart']) > 1 ){ $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 = '';
kirill (4 комм.)
на страницах вообще нету описаний, в постах есть изменения уже как 2 недели прошли
Значит пропишите в админке в разделе редактирования категорий описания для них.
Даниэль (16 комм.)
Даниэль (16 комм.)
Еще даже лучше просто переменную $titl_e
ПафНутиЙ (124 комм.)
Александр (2 комм.)
Мутная идея 🙂 Я не пробовал этот вариант, но проверить стоит. Откройте engine/modules/show.full.php и найдите: $tpl->set ( ‘
LERR (6 комм.)
АлаичЪ, хочу поговорить по поводу этого «Вы верите в миф, что вес каждого слова в заголовке title обратно пропорционален их количеству, то есть, чем меньше слов в title, тем больший вес каждое из них будет иметь? Если вы согласны с этим мнением, то читайте дальше.» Я тоже верю в этот миф, но. У меня на сайте присутсвуют посты с короткими названиями из 2х трех слов. Яндекс и Гугл по своему реагируют на такие заголовки. Гугл насильно добавляет в конец тайтла название cайта через тире, а Яндекс может заменить тайтл на любой текст из поста (как правило он берет текст заключенный между тегами или ) Сейчас специально просмотрел все проиндексированные страницы в гугле и заметил что самый длинный тайтл к которому насильно добавлялось название сайта был размером в 20 символов Еще хочу поспорить по поводу этого «чем меньше слов в title, тем больший вес каждое из них будет иметь?» Да, это безусловно так, но. Тут есть свои плюсы и минусы. Поясню на примере двух своих сайтов. Один из них собирает примерно 2000 хостов в сутки исключительно на низкочастотниках, а другой 10000 в сутки на парочке высокочастотных запросов. Для высокочастотного запроса очень важен короткий тайтл, т.к. слова будут иметь высокий вес. А вот для низкочастотника абсолютно насрать какой вес у его слов. На то он и низкочастотник, что запрашивается очень редко. Для него будет куда важнее общая релевантность тайтла запросу пользователя. Очень часто замечаю что в низкочастотных запросах название тайтла иногда помогает и делает тайтл более релевантным запросу пользователя. Это все из личных наблюдений Исходя из этого можно было бы реализовать следующее: -Для постов с заголовками длиной менее 20 символов делать тайтлы вида: «Тайтл — Название сайта» -Для постов с заголовками длиной более 20 символов делать тайтлы вида: «Тайтл» Жду ответа.
LERR (6 комм.)
Решил сам попробовать =) И получилось. В файле /engine/engine.php после > elseif ($titl_e) < вставить это if (strlen ($titl_e) else
