0.00
Рейтинг
0.73
Сила

Блок с данными автора на странице топика

Помнится еще в начале своего прибывания на Хабре долго не мог понять, почему чтоб отметить автора необходимо сделать столько движений? Как не нравилось мне это — так и не нравится. Что собственно и стало причиной доработки, которой с вами делюсь. По ходу пьессы буду комментировать, что и к чему в итоге привело.

Задача: вывести при просмотре топика блок с информацией об авторе топика в сайдбаре справа следующего вида:


Читать дальше →

Статистика Google Analytics в LiveStreet

Давно задавался вопросом импортирования данных статистики из google analytics в нормальном виде и решил его для себя. Сейчас решил внедрить эту возможность в движок Livestreet и поделиться с общественностью. Замечу, что в код лезть не пришлось и все действия достаточно просты.



Смотрим пример и устанавливаем.
Читать дальше →

Адекватный 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 всего блога. На остальных — ссылка на общий поток.

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

Вывод блогов

Извините, подскажите пожалуйста каким образом можно вывести только свои записи в своем блоге, без записей в сообществах
Какие функции надо задействовать, чтобы по ссылке livestreet.ru/my/ВАСЯ/
выводились только записи из своего блога?

Добавляем превьюшку к топику

Вообще превьюшки к топикам созданы для красоты, яркости, визуализации, никакого иного предназначения у них нет. Мне не очень нравится чисто блоговый вид ЛС и Хабра, я люблю листать научно-популярные ( и не только :) журналы, поэтому захотелось сделать так:



Пример как это все выглядит «вживую» можно посмотреть на "Новой музыке". А вот сам код и алгоритм воплощения этой идеи:
Читать дальше →

Создание URL блога для людей

Опубликую идею которую в идеале стоило бы допинать полностью, но я надеюсь, что она будет услышана Ort-ом и реализована в виде родной возможности. А суть очень проста — избавить пользователей от написания URL при создании общего блога.
Читать дальше →

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

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

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

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


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

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

Набор стандартных шаблонов для социальных сетей на базе LiveStreet

Поскольку многие разработчики хотят, чтобы их проекты имели уникальный дизайн, то я решил опубликовать список основных шаблонов для движка LiveStreet. Надеюсь, что эта статья будет полезной как дизайнерам, которые будут рисовать шаблоны, так и владельцам проектов, которым будет немного легче в составлении ТЗ дизайнерам.

Шаблоны:

Читать дальше →

Блок "Похожие материалы"

Блок на самом деле очень полезный, и лично я им часто пользуюсь, если встречаю на сайтах.
К примеру: искал в поисковике инфу по определенной тематике, попал на сайт, прочитал материал, увидел что есть еще похожие — пошел читать дальше, а не закрыл страницу.

Как его можно реализовать, если взять за основу какой-либо алгоритм схожести по определенному числу тегов? К примеру, выводить все материалы, у которых совпадение с текущим — 2 тега.