-4.66
Рейтинг
3.69
Сила

Разные шаблоны для разных блогов

Здравствуйте!
Каким образом можно сделать разные шаблоны в разных блогах.

Например есть блог «Новости» и блог «Это интересно» с одинаковым шаблоном, так вот нужно сделать вывод блогов в разных шаблонах.
Спасибо за внимание

С уважением, Дмитрий.

Как посты определенного коллективного блога убрать из общей ленты?

Приветствую Вас, Господа!

Есть один вопрос :)

Хочу чтобы посты из определенного коллективного блога не транслировались в общую ленту www.site.ru/new, а показывались только www.site.ru/blog/nazvanie_bloga/. Это даёт возможность создать ленту блога на отвлечённую от главной темы сайта например, со ссылкой из основного меню.

Представляется следующая схема: у блога есть поле blog_index_rating_good — это пороговое значение рейтинга ТОПИКА, при котором топик из этого блога начинает показываться на главной как «хороший». Таким образом поле blog_index_rating_good становится специфической настройкой конфига «module.blog.index_good» для каждого отдельно взятого блога.

У вас есть другие идеи?:)

Механизм хуков в движке

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

Использовать можно так:
1. В любом месте(модуле, экшене) установить вызов необходимого хука на метод модуля
$this->Hook_AddExecModule('topic_show','Test_MyHookRun',10);
регистрирует на событие topic_show вызов метода MyHookRun у модуля Test с приоритетом 10.
2. В любом месте установить вызов хука на функцию
$this->Hook_AddExecFunction('topic_show','var_dump',-5);
регистрирует вызов функции var_dump
3. Создать класс хука в каталоге /classes/hooks/ с именем файла HookTest.class.php с содержанием
<? 
class HookTest extends Hook {	
	public function RegisterHook() {
		$this->AddHook('topic_show','testHookFunct',__CLASS__,-3);
	}
	
	public function testHookFunct($aVars) {
		var_dump("Hook it!");
	}
}
?>

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

роутинг новостей

Как сделать
Есть блог 'news'
Открывается он как ***.ru/blog/news
Создал новый экшен — который отображает Блог по ссылке ***.ru/news
Но внутренние сслыки Переходят на ***.ru/blog/news/1.html
Оно исходит из {$oTopic->getUrl()}. Как сделать ***.ru/news/1.html?

И как пользоваться внутренними функциями работы с контентом. Нужно получить массив последних 5-и топиков. Сейчас пока делал своими запросами… но явно же есть уже написаные функции.

п.с. нижняя панель не учитывает запросы которые я сам писал.

Новый механизм евентов

Изменил механизм регистрации и выполнения евентов в экшене.
Теперь можно регистрировать евент используя регулярные выражения, как для самого евента, так и для всех параметров, передаваемых в URL. Это позволяет избавиться от переопределения метода EventNotFound() при динамических евентах.

$this->AddEvent('edit','EventEditBlog');
$this->AddEventPreg('/^(\d+)\.html$/i','EventShowTopicPersonal');
$this->AddEventPreg('/^\w+$/i','/^(\d+)\.html$/i','EventShowTopic');
$this->AddEventPreg('/^\w+$/i','/^bad$/i','/^$/i','EventShowBlogBad');
$this->AddEventPreg('/^\w+$/i','/^bad$/i','/^page(\d+)$/i','EventShowBlogBad');

Так же осталась возможность использовать старый вариант с методом AddEvent(), он просто является оберткой для AddEventPreg().
Изменения здесь — http://trac.lsdev.ru/livestreet/changeset/35, просьба кто может протестить новый механизм :)