Пагинация
24
В очереной раз я наткнулся на SEO-беозабразие в LS. На этот раз я обнаружил, что пагинация плодит дубли страниц.
Я заметил, что в индексе ПС оказалось сразу три главных страницы сайта
Читать дальше
Я заметил, что в индексе ПС оказалось сразу три главных страницы сайта
Читать дальше
Бесплатный плагин «OpenID Comments»
20
«Наш ответ Чемберлену» :)
При отправке комментария гость увидит всплывающее окошко авторизации/регистрации, а после авторизации/регистрации его комментарий появится на сайте.
Плагин может работать совместно с плагином OpenID (что удобней для гостей сайта) или без него.
Github репозиторий плагина.
Пример работы плагина можно увидеть на Кукораме.
PS. Поблагодарить разработчиков можно отправив небольшой донейт
При отправке комментария гость увидит всплывающее окошко авторизации/регистрации, а после авторизации/регистрации его комментарий появится на сайте.
Плагин может работать совместно с плагином OpenID (что удобней для гостей сайта) или без него.
Github репозиторий плагина.
Пример работы плагина можно увидеть на Кукораме.
PS. Поблагодарить разработчиков можно отправив небольшой донейт
Модификация стандартного chekbox, функционал выделения и отключение всех chekbox
3
Недавно столкнулся с такой проблемой, в списке сообщений livestreet.ru/talk/ после нажатия на галочку, выделяются все «chekbox с определенным css классом» но нажимая второй раз эти галочки не снимаются, а по опыту использования на одном из проектов удобнее что бы было выделение и снятие галочки у chekbox.
Решается эта проблема заменой в js/main.js кода
PS Возможно кому то ещё пригодится такая модификация.
Решается эта проблема заменой в js/main.js кода
this.checkAll = function(cssclass, checkbox, invert) {
$('.'+cssclass).each(function(index, item){
if (invert) {
$(item).attr('checked', !$(item).attr("checked"));
} else {
$(item).attr('checked', $(checkbox).attr("checked"));
}
});
} на немного модифицированный код
this.checkAll = function(cssclass, checkbox, invert) {
$('.'+cssclass).each(function(index, item){
if (!$(checkbox).is(":checked")) {
$(item).removeAttr("checked");
} else {
$(item).attr("checked","checked");
}
});
}PS Возможно кому то ещё пригодится такая модификация.
- +1
- 11 февраля 2012, 09:34
- legioner
- Оставить комментарий
Спустя полгода LS 0.4.2 стал тормозить, описание ситуации
6
Вот и меня настигла нелегкая карма.
Проблема: При записи пустяковых вещей (комменты, небольшие топики) в БД через интерфейс LS от любого пользователя стали наблюдаться тормоза около 10 секунд.
Причем не постоянно. Но все же тормозить последнее время все стало.
Перезагружаю серв — все некоторое время ннормально, потом опять начинается…
Вплоть до выдачи вот такой ошибки иногда: «ошибка 504 Gateway Time-out nginx» (стоит Apache+nginx, причем не совсем уверен, что оно правильно настроено, но более полугода сайт работал без нареканий).
Количество активных пользователей на сайте около 30.
Ежедневная посещаемость ~ 100 уников.
В режиме чтения сайт работает нормально.
Хостинг fastvps.ru (виртуальный выделенный серв):

Статистика из админки:

Читать дальше
Проблема: При записи пустяковых вещей (комменты, небольшие топики) в БД через интерфейс LS от любого пользователя стали наблюдаться тормоза около 10 секунд.
Причем не постоянно. Но все же тормозить последнее время все стало.
Перезагружаю серв — все некоторое время ннормально, потом опять начинается…
Вплоть до выдачи вот такой ошибки иногда: «ошибка 504 Gateway Time-out nginx» (стоит Apache+nginx, причем не совсем уверен, что оно правильно настроено, но более полугода сайт работал без нареканий).
Количество активных пользователей на сайте около 30.
Ежедневная посещаемость ~ 100 уников.
В режиме чтения сайт работает нормально.
Хостинг fastvps.ru (виртуальный выделенный серв):

Статистика из админки:

Читать дальше
Livestreet Wall
24
Данный плагин реализует функциональность под названием «Стена». Он очень похож на одноименную стену в_контакте и facebook.Каждый пользователь в своем профиле имеет свою собственную стену. Существует коллективная стена, владельцем, которой является сам сайт. А так же фред-лента, которая содержит поток записей со стен друзей пользователя.
Плагин работает с активным применением технологии ajax.
Возможности пользователя:
— Добавление записи на стену
— Добавление изображения на стену
— Удаление своих записей, а так же чужих записей со своей стены
— Комментирование записей
— Удаление свои комментариев; комментариев, размещенных к записи пользователя; а так же удаление комментариев, размещенных к записям стены пользователя
Читать дальше
- +13
- 16 сентября 2011, 02:05
- sebastianprelesniy
- 155
Обновление шаблонизатора Smarty до версии 3.0.7
19
В SVN версии LS произошло обновление шаблонизатора Smarty, теперь используется последняя 3.0.7 версия, написанная на PHP 5.2.
Обновление в ядре прошло гладко, единственное пришлось внести изменения в стандартный класс Smarty — trac.lsdev.ru/livestreet/changeset/1129, это позволит делигировать шаблоны плагинами.
Теперь самое важное — для работы текущих шаблонов на новой версии шаблонизатора необходимо внести в них некоторые изменения. А именно:
Пример адаптации шаблона «new» — trac.lsdev.ru/livestreet/changeset/1128
Обновление в ядре прошло гладко, единственное пришлось внести изменения в стандартный класс Smarty — trac.lsdev.ru/livestreet/changeset/1129, это позволит делигировать шаблоны плагинами.
Теперь самое важное — для работы текущих шаблонов на новой версии шаблонизатора необходимо внести в них некоторые изменения. А именно:
- везде, где используется
имя файла нужно брать в кавычках, по сути это относится к любым параметрам{include file='file_name.tpl'} - не использовать апострофы `, т.е. было
стало{include file='paging.tpl' aPaging=`$aPaging`}
для математических выражений{include file='paging.tpl' aPaging=$aPaging}
меняем их на скобки{section name=closelist1 loop=`$nesting-$cmtlevel+1`}{section name=closelist1 loop=($nesting-$cmtlevel+1)} - после открывающей фигурной скобки { и перед закрывающей } не должно быть пробельных символов, иначе они не считаются за конструкции Smarty
- в условиях логические операторы необходимо отделять пробелами, было
стало{if $aParams[0]=='favourites'and$aParams[1]!='comments'}{if $aParams[0]=='favourites' and $aParams[1]!='comments'}
Пример адаптации шаблона «new» — trac.lsdev.ru/livestreet/changeset/1128
Особенности шаблонов Livestreet для новичков.
63
Параллельно с версткой своего шаблона, который, надеюсь, скоро будет доступен широкой общественности решил сделать пару заметок о том, что интересного и непонятного можно найти в файлах шаблона Livestreet. Будет полезно для тех, кто впервые открыл папку с шаблоном Livestreet.
Это не руководство по созданию тем LS, просто поможет избежать некоторых вопросов.
Читать дальше
Это не руководство по созданию тем LS, просто поможет избежать некоторых вопросов.
Читать дальше
Прикручиваем 3 Smarty к LS
11
В коментариях к одному из топиков, randomtoy попросил меня рассказать по подробней про прикрутку smarty 3 к ЛайвСтриту — рассказываю.
Там в общем-то ничего сложного нет.
1) Файл /engine/modules/viewer/Viewer.class.php
Не заработал метод Viewer -> TemplateExists()
Времени разбираться и делать по человечески не было, заменил внутренности функции на следующий код
Читать дальше
Там в общем-то ничего сложного нет.
1) Файл /engine/modules/viewer/Viewer.class.php
Не заработал метод Viewer -> TemplateExists()
Времени разбираться и делать по человечески не было, заменил внутренности функции на следующий код
if (file_exists($sTemplate)) return true;
foreach ($this->oSmarty->template_dir as $dir) {
if (file_exists($dir . '/' . $sTemplate)) return true;
}
return false;Читать дальше
История про нагрузку и как я с ней боролся.
90
Случилось так, что на одном из проектов full time стал переваливать за 1,5 сек и при этом сжирался весь проц. При этом все остальные показали были в норме: база — 0,002 сек, кеш — 0,01 сек.
Пришлось прикручивать профайлер и смотреть, в чем дело.
Виноват оказался Smarty, который из 1,5 секунд работал 1,2 (шаблон, на проекте, используется стандартный с легкими изменениями).
Копаясь дальше нашел самый сложный шаблон comments_tree.tpl, который выполняет в цикле инклюд шаблона comment.tpl.
Проблема решилась отказом от инклюда и переносом содержимого из comment.tpl в comments_tree.tpl.
full time на топиках с 400+ комментариев не превышает 0,4 сек.
Надеюсь кому-то поможет.
Пришлось прикручивать профайлер и смотреть, в чем дело.
Виноват оказался Smarty, который из 1,5 секунд работал 1,2 (шаблон, на проекте, используется стандартный с легкими изменениями).
Копаясь дальше нашел самый сложный шаблон comments_tree.tpl, который выполняет в цикле инклюд шаблона comment.tpl.
Проблема решилась отказом от инклюда и переносом содержимого из comment.tpl в comments_tree.tpl.
full time на топиках с 400+ комментариев не превышает 0,4 сек.
Надеюсь кому-то поможет.