+1.80
Рейтинг
4.61
Сила

Игорь

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


Вводное:
Наверное многие знакомы с возможностью на таких ресурсах как 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: На все вопросы готов ответить в комментариях, хотя надеюсь они не возникнут :)

Бесплатный плагин "Слайдер"

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

Для слайдов берутся превьюшки создаваемые плагином "Preview Topic", в качестве слайдера использован Nivo Slider.

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

В конфиге плагина есть возможность указать:

1. Позицию слайдера (слайдер может быть расположен над топиками либо в блоке).
2. Тип слайдера (брать картинки из топиков или использовать плагин «Preview Topic»).
3. Из какого блога брать топики и в каком количестве.
4. Также присутствуют настройки вывода блока.

Внимание!

Для корректной работы плагина необходимо настроить размеры слайдера в файле
slider/templates/skin/default/css/style.css.

Для этого следует:

1. Если в конфиге выбрано «брать изображения из топиков» — в строках 4,5 и 11,12 прописать необходимые размеры изображения. Первые изображения в топиках выбранного блога должны быть таких же резмеров.

2. Если в конфиге выбрано «использовать превьюшки созданные плагином „Preview Topic“» — в строках 4,5 и 11,12 прописать размеры изображения выбранные в конфиге плагина «Preview Topic». Кроме этого эти же размеры необходимо указать в файлах ...slider/templates/skin/default/block.slider.tpl в строке 14 и ...slider/templates/skin/default/content_begin.tpl в строке 12.

Огромное спасибо за помощь пользователям netlanc и Maksimenko !
Читать дальше →

Прошу помощи в доведении до ума слайдера

Уважаемое сообщество, нужна помощь в организации слайдера на сайте. За решение вопроса готов заплатить.

Ниже описание того, что мне нужно:

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

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

Оговорюсь сразу: поиском пользовался, у меня даже и решение для 0,4 версии было (по фильтру постов), но в 0,5 не работает; давать наводки куда копать тоже не надо — их находил много, но банальная нехватка знаний в области программирования не позволяет ими воспользоваться. Так что необходимо готовое решение (куда и что вставить) за которое я готов немного заплатить.

PS: Всех с праздниками! :)

Главная страница тегов. (Решено)

Заметил одну проблему. При просмотре тегов по адресу

site.ru/tag/названиетега — выводятся теги, а вот если просто зайти на site.ru/tag/, нам показывается ошибка 404. Может лучше сделать форму ввода тега, для поиска постов по определенным словам. Было бы не плохо, если бы это реализовали в следующей версии ls.

Для того, что бы на странице вида site.ru/tag/ выводилась форма поиска по тегу, следует сделать следующее:
В файле classes/action/ActionTag.class.php доработать код до следующего:
public function Init() {
        
            $this->SetDefaultEvent('tag');
        }
        
        protected function RegisterEvent() {    
            $this->AddEvent('tag', 'EventTags');
            $this->AddEventPreg('/^.+$/i','/^(page(\d+))?$/i','EventTags');                                     
        }


В файле вашего шаблона action/ActionTag/index.tpl создать условие вывода:

<form action="" method="GET" id="tag_search_form">
    <h1>{$aLang.tag_title}</h1>
	{if $sEvent=='tag'} 
	<input type="text" name="tag" id="tag_search" value="" />
	</form>
{else}
	<input type="text" name="tag" id="tag_search" value="{$sTag|escape:'html'}" />
	</form>
	{include file='topic_list.tpl'}
{/if}


Все готово.

Как создать свой вид топика, используя систему плагинов

3 года назад было написано Руководство: Как создать свой вид топика на LiveStreet. В то время ещё не было системы плагинов, и всё делалось «топорно», что в последствии затрудняло обновление движка, т.к. приходилось свои куски кода вставлять опять. С появлением системы плагинов LiveStreet стал более гибким и легко обновляемым. Передо мной встала задача создать новый вид топика, и я решил сделать это плагином. Но в процессе выяснилось, что то ли я чего-то не знаю, толи этого нет.

Напишу, что и как я делал, заодно задам вопросы, может быть на них решение уже есть. Надеюсь, совместно у нас получится сделать каркас нового типа топика в форме плагина.
Читать дальше →

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

Приветствую всех пользователей LiveStreet!

В прошлый раз я рассказывал как выделить визуально комментарии админа сайта. После этого мне на глаза попадался комментарий одного из пользователей, который желал выделить цветом комментарии топикстартера.

Как это сделать изложено под катом...

Увеличиваем скорость livestreet. Nginx. GZip и не только.

Недавно перешел с шаред хостинга на VPS и столкнулся с проблемой что VPS работает не очень быстро, при том что тариф взял не самый дешевый (1600MHz и 1024Mb). Перекопал кучу сайтов чтобы разобраться как все сделать лучшим образом, думаю многие с этим сталкивались, хочу сэкономить ваше время и подытожить важные моменты по настройке.
Для тестирования производительности изначально использовал приложение siege, когда меня там цифры стали более-менее радовать, уже начал использовать для тестов замечательный сайт loadimpact.com (количество бесплатных проверок ограничено, не злоупотребляйте сразу). Привожу картинки как было и как стало (сразу хочу заметить увеличение производительности не только из-за настройки nginx).
1. Debian 5 (64) nginx + apache + php-fcgi + eAccelerator + memcache (Апач по сути только для ISPmanager использовался)

2. Debian 5 (32) nginx + apache + mod_php + APC + memcache


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

Замена стандартной каптчи на reCAPTCHA

Понятно, что стандартная каптча не сможет хорошо защитить от спаммеров. Поэтому займемся её заменой. Я для себя выбрал reCAPTCHA, хотя её многие и не любят из-за сложности её распознавания. Зато мы помогаем гуглу расшифровывать книги! =)
Идем сюда и получаем ключи: Public Key и Private Key. Public будем вставлять в JavaScript и он может быть обнаружен в исходном коде страницы, Private же нужно хранить в секрете и использовать только на стороне сервера. Итак, приступаем собственно к замене каптчи...

Статус онлайн в профиле (и не только) [реализация]




Спасибо ort и PSNet

Загорелся идеей вывести в профиль статус онлайн/оффлайн для пользователей. Понял, что по сути можно сделать напрямую в шаблоне примерно такой схемой
{если «текущее время в секундах» — «дата последнего визита в секундах» < 900 секунд} онлайн {иначе} оффлайн {/если}

Под катом инструкция

Дополнительное поле при создании топика

Здравствуйте, довольно актуальная тема на 0.5.x

Дополнительное поле при создание топика

Сразу хочу сказать спасибо:
bas eXtravert bamboo

Источники: HOWTO: Дополнительные поля при создании топика — подправил адреса к файлам + добавил русского языка

Цель:
  • Часть I создание дополнительного поля в шаблоне new под 0.5.1
  • Часть II опубликованное дополнительное поле видно только администраторам


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