Модуль привязки LS к Яндекс-блогам. Пингатор.

Позволяет наладить поиск в Яндекс-блогах комментариев и топиков сайта. (+ Пинг до Google)
Содержит оптимизированный под требования Яндекса RSS, включая FOAF страницы, пингатор для оповещения сервиса Яндекс-блогов о новых поступивших комментариях и топиках.
RSS разбит на страницы, что позволяет роботу Яндекса проиндексировать все записи и комментарии за всё время существования сайта.

45 wmz

Пример

Какая-то жесть с RSS

Глюкает RSS. Если у пользователя логин начинается с большой буквы, например Lego — RSS не выводится, или выводится через раз ((

В чем может быть проблема?

На виндовой тестовой модели — все работает нормально, а на серваке (под линуксой) — все плохо, видимо из-за того, что виндам пофигу на регистр букв адреса, а линуксе — нет.

Что делать?

Навигация (FAQ от 2009-02-20)

FAQ теперь удобнее!


• Создана удобная навигация.
• Теперь архивы с файлообменников будут идти в комплекте. (Спасибо за предложение Lora_GT)

Добавлены новые вопросы, моды и хаки:
Читать дальше →

Доработка RSS потока

В RSS до cut

Почти сразу, как поставил движок, передо мной встал вопрос: как отдавать в rss долько до кут? Не хотелось мне отдавать полные топики в ленту, т.к. материалы можно почитать на сайте, а школьникам лентяям отрезать возможность что-то полезное оттуда грабить.

Теперь это решение кажется уже довольно простым. Достаточно в экшене ActionRss.class.php в одной из функций (например RssGood) изменить одну строку на:

$item['description']=$oTopic->getTextShort();


Последние материалы блога в rss

Тут же вылезла проблема, что прочитав анонс пользователю ну совершенно некуда кликнуть. Что согласитесь — форменный бардак. Решил, что нужны «читать далее» и «последние посты топика». Теперь в rss канале футер анонса выглядит так:



Тут порядок такой. В том же файле в той же функции вставлем после:

foreach ($aTopics as $oTopic){


Этот код:

$aFooter="";
$aMyBlogId=$oTopic->getBlogId();
$aMyResult=$this->Topic_GetTopicsByBlogGood($this->Blog_GetBlogById($aMyBlogId),0,1,3);
$aMyTopics=$aMyResult['collection'];
foreach ($aMyTopics as $oMyTopic){
  $aFooter=$aFooter.'<li><a href='.$oTopic->getUrl().'>'.$oMyTopic->getTitle().'</a></li>';
}


А ту переменную, что мы уже меняли выше, заменяем на:

$item['description']=$oTopic->getTextShort().'

<a href='.$oTopic->getUrl().'>читать полностью</a>

<b>Последнее из блога:</b> <a href='.$oTopic->getBlogUrlFull().'>'.$oTopic->getBlogTitle().'</a><br /><br /><ul>'.$aFooter.'</ul>';


Вот собственно и все. У кого есть мысли по поводу развития темы дополнений в rss, пишите — обсудим.

Рабочий пример как обычно можно увидеть на TechFuture RSS — в данном случае в rss хороших топиков.

UPD: Исправлены ошибки, дополнен код.

Адекватный rss для страниц блога

Мне потребовалось, чтобы при отображении блогов в head был адекватный показанной странице с указанием ссылки на rss-поток именно просматриваемой страницы. Решение придумывалось быстро, и, вероятно, оно не совсем правильное, но работает.

В файл шаблона header.tpl в секцию head я добавил следующий код:
{if $oTopic}
	<link title="Комментарии к топику {$oTopic->getTitle()|escape:'html'}" type="application/rss+xml" rel="alternate" href="{$DIR_WEB_ROOT}/rss/comments/{$oTopic->getId()}/">
	{elseif $oBlog}
	<link title="{$oBlog->getTitle()}" type="application/rss+xml" rel="alternate" href="{$oBlog->getRssUrl()}">
	{elseif $oUserProfile}
	<link title="Rss-лента пользователя {$oUserProfile->getLogin()}" type="application/rss+xml" rel="alternate" href="{$DIR_WEB_ROOT}/rss/log/{$oUserProfile->getLogin()}/">
	{else}
	<link title="" type="application/rss+xml" rel="alternate" href="{$DIR_WEB_ROOT}/rss/">
	{/if}

А в методы в blog.entity.class.php:
public function getRssUrl() {
		if ($this->getType()=='personal') {
    		return DIR_WEB_ROOT.'/rss/log/'.$this->getUrl().'/';
    	} else {
    		return DIR_WEB_ROOT.'/rss/blog/'.$this->getUrl().'/';
    	}
	}


Мне показалось, что личный блог определяется в исходном коде движка несколько кривовато, но сейчас разбираться нет времени.

Итак, на странице темы добавляется ссылка на rss с комментариями к ней. На странице блога — ссылка на rss всего блога. На остальных — ссылка на общий поток.

Жду комментариев и дополнений. Просьба строго не судить, ибо мозг не варит.

Индексация сайтов на LS в блогах Яндекса

На законный вопрос техподдержке Яндекса об индексации rss-потоков сайта на LS был получен утвердительный ответ со ссылкой на ленту. Ссылка такая.

Следует отметить, что переписка с поддержкой продвигается достаточно медленно. Вероятно, ответ на вопрос о других способах найти ленту в выдаче появится через пару дней. А пока что публикую официальный способ попадания в сервисы блогов Яндекса:

Блогохостинги включаются в рейтинг сервисов по процедуре, после налаживания
пингов, у каждого блога на сервисе должен быть отдельный rss и после того, как
количество блогов в нем станет больше 100.


Обобщая, получаем такой список:
— более 100 «живых» пользователей на сайте под управлением LS
— есть общая rss-лента сайта
— есть rss-лента каждого блога в отдельности и она прописана в теле страницы в таком виде:
<link title="" type="application/rss+xml" rel="alternate" href="http://mysite.com/blog/rss/">
— есть такая же лента комментариев
— после отправки/обновления записи в каждом блоге на Яндекс отправляется пинг с указанием пользователя и блога
— после отправки комментария отправляется аналогичный пинг со ссылкой на ленту комментариев

Если технически все это организовать теперь несложно и будущее в Яндекс.блогах у проектов на LS как выяснилось есть, то первый пункт — неплохое ограничение, которое для меня пока что непреодолимо.

В RSS только до cut

Хочу чтоб тексты статей на сайте отдавались в rss только до cut. Ну, и там типа «ссылка-на-статью-на-сайте». А если бы еще можно было содержание rss изменять, футер у записей например — ваще красота.

Подскажите куда копать и че ваще делать?)

RSS

Как обстоят дела с RSS? Методом копания кода нашёл код отвечающий за RSS и по адресу: сайт/rss как я понял выдаётся сама рсска. Но срабатывает через раз, часто начинает выдавать пустой RSS, непонятно как транслировать каменты…

Вобщем когда планируется сделать полноценную поддержку RSS?

Социальные закладки и RSS

Предлагаю добавить несколько полезных сервисов
Социальные закладки в низу каждого поста (что то типа одна кнопка)
ну и конечно RSS потоки (комментариев, групп, блогов...)
зы
ещё заметил одну неудобность
на почту приходит извещение о том что кто то прокоментировал или ответил
а текст комментария не приходит
это на мой взгляд неудобно, потому как все время приходится переходить по ссылке

RSS

Я думаю очень нужная вещь для подобного проекта.
РСС на комментарии в выбранном топике, новые хорошие, новые все, ну и вообще по всем вкладкам отдельные рсс ленты.