Плагин "TrickyTitle" - хитрые и уникальные заголовки страниц
Привет друзья!
С удовольствием представляю вам новый, полезный, модуль для LiveStreet 1.0.1.
Плагин предназначен для автоматической модификации содержимого HTML тега «title». Таким образом, чтобы это содержимое выглядело информативно для поисковых систем, было уникальным для любой страницы, и вместе с тем, не теряло осмысленности.
В первую очередь нацелено на различные страницы со списками топиков, которые по умолчанию не имеют уникальных заголовков совсем, либо имеют их в очень ограниченном виде (акции index, blog, tag и тому подобное)
Уникальность достигается вынесением в заголовок информации о странице, периоде и некой, дополнительной, текстовой фразы.
Информативность для поисковых движков достигается вынесением в заголовок, аккуратно приготовленных, списков тегов или блогов.
Структура результата (в типичных случаях, много чего можно менять конфигурационными параметрами) выглядит так:
original — оригинальное значение title сгенерированное движком LiveStreet
s — текст-разделитель. Обычно какой-то символ обрамлённый пробелами
value — дополнительная фраза которую можно задать для каждой страницы индивидуально
(tags) — список тегов заключенный в скобки, которым может быть дополнено value или original
(blogs) — список названий блогов заключенный в скобки, которым может быть дополнено value или original
period — текущий временной интервал
page — текущая страница
site — название сайта (view.name стандартной конфигурации LiveStreet)
Примеры:
Откуда берется value?
Для каждой страницы, в конфигурационном файле, можно задать один ключ стандартной локализации LiveStreet. Можно использовать глобальные ключи, например blog_menu_all или ввести собственный ключ в локализационных файлах плагина. (Акцентирую внимание — локализация поддерживается в полном объеме, да )
Как работает генерация списка тегов?
Собираются все теги из топиков на странице. Отбрасываются те, которые неточно (неточность примитивная, но лучше чем ничего ) совпадают с частью original. Отбрасываются также те, которые, по мнению плагина, встречаются слишком редко для данной страницы. Результат сортируется по частоте встречаемости, и первые N тегов (N задаётся конфигурационным параметром ), из этого отсортированного списка, попадают в заголовок.
Как работает генерация списка названий блогов?
Собираются все названия блогов из топиков на странице. Сортируются во-первых по частоте встречаемости, и во-вторых по собственному рейтингу (getRating() ) Первые N блогов (N задаётся конфигурационным параметром ), из этого отсортированного списка, попадают в заголовок.
Как вы уже наверняка догадались, структуру результата можно настраивать в широких пределах, индивидуально для каждой страницы. Это, к сожалению, не очень просто, но файл конфигурации содержит в себе обширное описание чего и как. Плюс сама по себе конфигурация плагина «по умолчанию» содержит настройки для практически всех основных страниц, т.е. примеров много.
Разрабатывался плагин для сайта MMOзговед, там же можно посмотреть на результат в живую.
Исходный код доступен на GitHub (только надо переименовать папку с плагином в trickytitle, если будете качать его оттуда до прохождения модерации).
P.S. GPL v.2 т.е. халява (и никаких скрытых линков, честно ).
P.P.S. Пожелания и предложения выслушиваются с интересом. Пойманные жуки принимаются с благодарностью. Весьма вероятно, машина будет развиваться в обозримом будущем — задумки есть.
С удовольствием представляю вам новый, полезный, модуль для LiveStreet 1.0.1.
Плагин предназначен для автоматической модификации содержимого HTML тега «title». Таким образом, чтобы это содержимое выглядело информативно для поисковых систем, было уникальным для любой страницы, и вместе с тем, не теряло осмысленности.
В первую очередь нацелено на различные страницы со списками топиков, которые по умолчанию не имеют уникальных заголовков совсем, либо имеют их в очень ограниченном виде (акции index, blog, tag и тому подобное)
Уникальность достигается вынесением в заголовок информации о странице, периоде и некой, дополнительной, текстовой фразы.
Информативность для поисковых движков достигается вынесением в заголовок, аккуратно приготовленных, списков тегов или блогов.
Структура результата (в типичных случаях, много чего можно менять конфигурационными параметрами) выглядит так:
<original><s><value (tags)><s><period><s><page><s><site>
<original (blogs)><s><period><s><page><s><site>
где:original — оригинальное значение title сгенерированное движком LiveStreet
s — текст-разделитель. Обычно какой-то символ обрамлённый пробелами
value — дополнительная фраза которую можно задать для каждой страницы индивидуально
(tags) — список тегов заключенный в скобки, которым может быть дополнено value или original
(blogs) — список названий блогов заключенный в скобки, которым может быть дополнено value или original
period — текущий временной интервал
page — текущая страница
site — название сайта (view.name стандартной конфигурации LiveStreet)
Примеры:
EVE-online (песочница, видео, индустрия) / Топ / За все время / Страница 2 / MMOзговед
Обсуждаемые (Kerbal Space Program, Guild Wars 2, Lineage II) / За 30 дней / Страница 3 / MMOзговед
Откуда берется value?
Для каждой страницы, в конфигурационном файле, можно задать один ключ стандартной локализации LiveStreet. Можно использовать глобальные ключи, например blog_menu_all или ввести собственный ключ в локализационных файлах плагина. (Акцентирую внимание — локализация поддерживается в полном объеме, да )
Как работает генерация списка тегов?
Собираются все теги из топиков на странице. Отбрасываются те, которые неточно (неточность примитивная, но лучше чем ничего ) совпадают с частью original. Отбрасываются также те, которые, по мнению плагина, встречаются слишком редко для данной страницы. Результат сортируется по частоте встречаемости, и первые N тегов (N задаётся конфигурационным параметром ), из этого отсортированного списка, попадают в заголовок.
Как работает генерация списка названий блогов?
Собираются все названия блогов из топиков на странице. Сортируются во-первых по частоте встречаемости, и во-вторых по собственному рейтингу (getRating() ) Первые N блогов (N задаётся конфигурационным параметром ), из этого отсортированного списка, попадают в заголовок.
Как вы уже наверняка догадались, структуру результата можно настраивать в широких пределах, индивидуально для каждой страницы. Это, к сожалению, не очень просто, но файл конфигурации содержит в себе обширное описание чего и как. Плюс сама по себе конфигурация плагина «по умолчанию» содержит настройки для практически всех основных страниц, т.е. примеров много.
Разрабатывался плагин для сайта MMOзговед, там же можно посмотреть на результат в живую.
Исходный код доступен на GitHub (только надо переименовать папку с плагином в trickytitle, если будете качать его оттуда до прохождения модерации).
P.S. GPL v.2 т.е. халява (и никаких скрытых линков, честно ).
P.P.S. Пожелания и предложения выслушиваются с интересом. Пойманные жуки принимаются с благодарностью. Весьма вероятно, машина будет развиваться в обозримом будущем — задумки есть.
36 комментариев
как думаете будет ли плагин работать под 051, не как не могу переехать на 101
Вот такой стандартный линк, например: mmozg.net/index/discussed/page3/?period=30
раньше имел лаконичный заголовок совпадающий с название сайта: «MMOзговед»
теперь: «MMOзговед (Kerbal Space Program, EVE-online, Archeage, Lineage II, mmozg.net) / Обсуждаемые / За 30 дней / Страница 3»
Вот такой линк на блог mmozg.net/blog/aa/top/?period=all
раньше: «Archeage / MMOзговед»
теперь: «Archeage (AA, видео, beta, OBT, локализация) / Топ / За все время / MMOзговед»
линк на всю активность: mmozg.net/stream/all/
раньше: «MMOзговед»
теперь: «Вся / Активность / MMOзговед»
Конструируется на основе конфигурации, мои примеры соответствую конфигурации «по умолчанию». Конфигурацией можно менять местами фразы, списки, включать/выключать отображение страниц и периодов и всё такое прочие. Для каждой страницы индивидуально.
Так что нет. Вы не правы. TrickyTitle в разы полезнее плагина «Seo».
и поменять его на
Но тогда смысл данного плагина?
Если это не отключить, то название вашего сайта, всегда будет с названием заголовка статьи последней статьи.
Название вашего сайта в заголовке: «ВКонтакте» а с плагином будет так: «ВКонтакте — и заголовок последней статьи»
И надо вам длинные заголовки на главной вашего сайта?
0. Если у вас на сайте нет контента, который представлен заметками с тагами в коллективных блогах, то это плагин вам ничего не даст. Но если у вас нет такого контента, то никакая SEO оптимизация вам ничего не даст. Ибо нечего оптимизировать.
1. Заголовки для разных страниц строятся по разному. Поиграйтесь, посмотрите как выглядят заголовки для страниц поиска, активности, страницы списка заметок из одного блога с плагином и без. Если уж из описания вы не можете это понять.
2. Если у вас нужный контент есть, то вы получаете список отличных ключевых слов в заголовке + гарантированную его уникальность среди всех страниц — пойдите и посмотрите как это выглядит на нашем сайте. Линк в заметке есть.
3. Хозяине — барин. Пользоваться или нет ваше право. Моё дело — предложить :) Я верю что штука полезная.
Спасибо за офигенский плагин.
Еще бы микродату прикрутить к ЛС (description и рейтинг статьи в звездочках) — цены бы не было. Сайты реально начинают двигаться в выдаче заметно лучше, ну когда контент есть. А если его нет, то никакая техническая примочка не поможет.
Спасибо.
А теперь представьте, что рядом будет еще и заголовок последней статьи?
Э… Вы описание и комментарии точно читали? Этот плагин, в частности, уже это делает.
mmozg.net/blog/la2/page2/ — здесь что добавлено в тайтл? может я не понял тогда суть плагина…
mmozg.net/tag/Lineage%202/page4/
mmozg.net/search/topics/page5/?q=archeage
А ваш пример — какой-то баг. Спасибо. Разбираюсь.
Ещё раз большое спасибо господину Frankenstein за обнаружение проблемы.
была создана следующая конструкция для заголовков блогов:
$config[«blog»]["*"][«discussed»]["*"][«title»][«value»] = «Популярные / блоги »;
$config[«blog»]["*"]["-"][«title»][«show_value»] = true;
$config[«blog»]["*"][«discussed»][«title»][«show_tags»] = false;
$config[«blog»]["*"][«discussed»][«title»][«show_blogs»] = false;
$config[«blog»][«newall»]["*"][«title»][«value»] = «Новые / блоги »;
$config[«blog»]["*"][«newall»][«title»][«default_period»] = «all»;
$config[«blog»]["*"][«newall»][«title»][«show_period»] = true;
$config[«blog»]["*"][«newall»][«title»][«show_tags»] = false;
$config[«blog»]["*"][«newall»][«title»][«show_blogs»] = false;
$config[«blog»][«top»]["*"][«title»][«value»] = «Лучшие / блоги »;
$config[«blog»]["*"][«top»][«title»][«show_tags»] = false;
$config[«blog»]["*"][«top»][«title»][«show_blogs»] = false;
$config[«blog»][«good»]["*"][«title»][«value»] = «Интересные / блоги »;
$config[«blog»]["*"][«good»][«title»][«show_tags»] = false;
$config[«blog»]["*"][«good»][«title»][«show_blogs»] = false;
к сожалению она не работает на постраничной навигации в каждом отдельно — взятом блоге
например вот тут:
site.com/blog/employment-and-Jobs/page2/
и при сортировке по типу топиков вот тут:
site.com/blog/employment-and-Jobs/discussed/
везде виден заголовок employment & Jobs / / Sitename, а во втором случае еще и ошибку:
Notice: Undefined index: value in /var/www/orangehare/data/www/site.com/plugins/trickytitle/classes/modules/titletext/Titletext.class.php on line 91
Пробовал подставлять в конструкцию регулярку страницы и дополнительную регулярку [*] — безрезультатно.
Помогите пожалуйста решить эту проблему
MMOзговед (Archeage, неММО) / Новые
И у меня view-source:http://ptzonline.ru/index/new/ такое
Карельская социальная сеть (Видлица — News, Русская литература) / BLOG_MENU_ALL_ONLY_NEW
BLOG_MENU_ALL_ONLY_NEW и другие подобные штуки где должны быть прописаны?
Карельская социальная сеть (Видлица — News, Блог им. VidlickieNovosti, Русская литература) / Новые
только «Alex / Профиль» (или «Профиль Alex»)?
Сейчас по-умолчанию выводит «Профиль / Профиль Alex / Название_сайта».
Манипуляции с
не помогли.