+60.64
450 читателей, 105 топиков

тюнинг капчи (reCAPTCHA)

1. Введение.
почитав топик о тюнинге Капчи и решил попробовать прикрутить рекапчу. reCAPTCHA — это система для защиты веб-сайта от интернет ботов (для защиты от спама), которая с пользой использует затраченные на ввод изображения время человека, с целью распознавания книг. Полученное мной решение не идеальное, имеет некоторые недоработки, но, что удивительно (смайл), работает. Буду рад, если хоть кто нибудь подскажет и поможет доработать до оптимального состояния.

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

Сжатие страниц LiveStreet на лету

В ходе выяснения подробностей сжатия статей на LiveStreet родилось краткое how-to.

Шаг 1. Проверка. Чтобы проверить, сжимаются ли уже у вас сейчас страницы, можно воспользоваться сервисом whatsmyip.org/mod_gzip_test/
Читать дальше →

Seo настройки сайтов на LS

Что-то так мало инфы на сайте по этому поводу, я решил по-немногу собирать все в этом топике.

Тайтлы


Как я вижу нормальную работу с тайтлами:

1. Главная имеет тайтлы с ключами
2. На внутренних в тайтле выводим название статьи + рубрика + название сайта(не обязательно). Причем, если название сайта и выводить, то только краткое и оно не должно повторять тайтл главной. Или же вообще выводить исключительно в тайтле название статьи(топика) + возможность указывать тайтлы отдельно.

Как сейчас по дефолту — название сайта = тайтлу и это название лепится везде на всех страницах.
Читать дальше →

Костыли для корпоративных блогов

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

Предпосылки: очень нужно и неважно, что не будет всего сразу :)

Идея в том, чтобы реализовать корпоративные блоги через шаблоны. Если сравнивать отличия обычного коллективного блога от корпоративного, то можно прийти к выводу, что очень многое решается так: «это убрать» и «это добавить».

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

Приветственный мессадж для новых пользователей

Чтобы Ваш сайт засверкал и засиял доброжелательностью и человеколюбием, вы можете организовать рассылку приветсвенного сообщения в инбокс (private message) каждому вновь зарегистрированному пользователю, где можете написать все что хотите, от радостного «Привет %username%!» до маленького экскурса по всем фичам и секретам работы сайта.

Хак сделан LS мафией (Benone & Lora GT) :)
Демо смотрите на "Новой Музыке".
Читать дальше →

Оптимизация шаблонов

Пролог


Наброски по данной статье лежали ещё с конца зимы и все никак не было времени на её написание, поэтому решил опубликовать её почти «как есть» т.е. с сухими выжимками фактов, без расписанных деталей. Это поможет остальным членам сообщества совершенствовать свои шаблоны.

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

Делаем "Фотоблоки"


Вводное:
Наверное многие знакомы с возможностью на таких ресурсах как LAM (Lookatme) создавать внутри поста фотоблоки куда помещаются некоторое количество фотографий (чтобы не делать чересчур длинной скатерти). Да, в ЛС уже существует подобная штуковина — Фотосеты, но как отдельный вид поста она не имеет смысла. Сегодня я расскажу вам как сделать эти самые «Фотоблоки».

Нам понадобятся:
1. LiveStreet версии 0.5-0.5.1
2. Шаблон на jQuery
3. Fotoramajs от Артема Поликарпова
4. Прямые руки

Присутпим:
1. Качаем архив с Fotoramajs отсюда fotoramajs.com/

2. Внутри вы обнаружите 2 файла: собственно сама библотека fotorama.js и файл стилей для настройки внешнего вида fotorama.css

3. Подключаем библиотеку (предварительно поместив её в папку js вашего шаблона) в header.tpl вашего шаблона, очень просто
<script type="text/javascript" src="{cfg name='path.static.skin'}/js/fotorama.js"></script>
и учитываем что у вас также уже должна быть подключена библотека jQuery.

Подключаем css файл
<link href="{cfg name='path.static.skin'}/css/fotorama.css" rel="stylesheet">

4. Теперь идем в настройки jevix.php (папка config) и разрешаем тег div
// вызов метода с параметрами
			array(
				array('cut','a', 'img', 'i', 'b', 'u', 's', 'video', 'em',  'strong', 'nobr', 'code', 'object', 'param', 'embed', 'ls', 'iframe','blockquote','div', 'p','h3','div'),
			),			


array(
				'div',
				array('class')
			),


5. Вуаля, все что нам теперь остается, зайти в редактор, создать новый пост, кликнуть на просмотр html кода (это если у вас tinyMCE), найти нужные вам фотографии (для незнающих тег img) и обьединить в следующий div

<div class="fotorama">
  <img src="1.jpg> <img src="2.jpg"> <img src="3.jpg">
</div>


PS: На все вопросы готов ответить в комментариях, хотя надеюсь они не возникнут :)

Настройка VPS сервера для дальнейшей работы с LiveStreet

Здравствуйте! Необходимо было перейти на выделенный сервер, где будет работать сайт на livestreet, ибо обычный хостинг не справлялся с нагрузкой. Настраивал сервер впервые, много нового узнал :)

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

Чего я хочу для LiveStreet или HighLoad играет значение

Смысл этого топика не в том что бы изменить ход развития LiveStreet или отметить его недостатки — нет. LiveStreet была и будет системой ориентированной на широкие массы, поэтому требовать от нее большего я не в праве, но я могу изменять свои проекты, делать свои решения и предоставлять их на суд.

В данный момент мне бы хотелось поделится своими мыслями по поводу реализации части любимого движка работающей с данными и то как эту часть можно оптимизировать и привести к более производительному и логичному виду.

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

Redis(а может и Node.js)
Первое изменение которой я бы сделал в своем проекте — использовал Redis для хранения событий пользователей. Использование MySQL для таких вещей не самоубийсво, но все таки очень тормознутое решение нежели Redis, для которой шустрость второе имя. Ко всему прочему можно добавить возможность publish/subscribe, позволяющая в купе с node.js выводить уведомления такие же как в Вконтакте. Размышляя в этом направлении можно расширить границы использования этой БД. Для осуществления работы можно использовать библиотеку Rediska, разработанную с подачи нашего соотечественника.

Тем кто заинтересовался темой будет уютнее почитать подробности тут, чем читать обрывки вырезанных из текста абзацев — Redis.

MongoDB
Данных у нас много и все они хранятся в реляционной базе данных. Что если нам координально изменить парадигму хранения данных и использовать MongoDB. Выиграем мы и в скорости запросов и в скорости работы с данными продолжая использовать ORM, потому как в MongoDB оно организованно на уровне C++, а не эмулируются как сделанно в данный момент в LiveStreet. Но за это разработчикам стоит сказать отдельное спасибо, т.к это было действительно ценное решение ускоряющее разработку.

Подробности в виде презентации — Mongodb.

PS
Я просто показываю вам что вы можете сделать со своим LiveStreet и какой космос открыт перед вами :)

Если вы в этом шарите думаю все будут только рады перенять ваш опыт :)