Всё о web

Для чайников и не только


Поднимаем fluxbb форум

Июль 18, 2015

fluxbb - один из самых быстрых и легковесных форумов, которые существуют. Этот движок основан на Punbb и распространяется бесплатно под лицензией GNU GPLv2. По сравнению с монстрами вроде phpBB или SMF он очень быстрый и лёгкий.

1. Скачиваем самую свежую версию с официального сайта и распаковываем архив в корень сайта.

2. Заходим по адресу http://ваш_сайт.ru/install.php

3. Заполняем инсталяционную форму, указываем соединение с БД, логин и пароль администратора, название форума и т.д.

4. Удаляем файл install.php

Следующая задача- установить русский язык.

1. Скачиваем с официального сайта русификатор и распаковываем архив в папку /lang.

2. Авторизуемся на своем форуме, заходим в админку в раздел "Options", адрес админки fluxbb: http://ваш_сайт/admin_index.php

3. Выбираем русский язык, часовой пояс, устанавливаем нормальный формат даты d.m.Y вместо американского Y-m-d.

4. Сохраняемся и удаляем папку с английским языком: /lang/english

5. Переавторизуемся.

На этом этапе имеем русифицированный форум fluxbb с минимумом возможностей, можно только оставлять сообщения, нет ни аватаров, ни bb-code. Скачиваем следующие обязательные плагины:

"Avatar Choice" и "EZBBC Toolbar".

Заходим в каждый архив и содержимое папки files копируем в корень сайта. После этого в левом меню админки появятся настройки этих модулей.

Заходим в настройки "Avatar Choice". Жмём кнопку "install avatar choice mod", затем "enable upload feature". После этого аватары пользователей должны быть полностью установлены. По умолчанию стоят ограничения в 10кб и 60px на размер аватара. В 2015 году это смешно. Заходим в админ-панель, в опции (/admin_options.php) и в секции "Аватары" подставляем нужные значения. Максимальное значение для размера файла можно задать в 999999 байт. Если этого мало, то через инспектор объектов меняем значение maxlength для инпута:

<input type="text" value="9000000" maxlength="10" size="6" name="form[avatars_size]"></input>

ava_choice

Теперь заходим в настройки "EZBBC Toolbar". Листаем в самый низ и находим опции "Video tag" и "Image upload". Включаем их. Для загрузки изображений также нужно задать нормальные лимиты. Так как картинки всё равно будут пережиматься в определённый размер, нет смысла задавать ограничения на загрузку. Размер изображений выставляем в 1000px. Теперь нужно добавить превью изображений.

Скачиваем плагин fancybox, создаём папку /plugins/fancybox и распаковываем туда содержимое папки source из архива.

Открываем файл header.php и немного ниже

<title><?php echo generate_page_title($page_title, $p) ?></title>
<?php require PUN_ROOT.'plugins/ezbbc/ezbbc_head.php'; ?>
<link rel="stylesheet" type="text/css" href="style/<?php echo $pun_user['style'].'.css' ?>" />


Добавляем:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<link rel="stylesheet" href="/plugins/fancybox/jquery.fancybox.css" type="text/css" media="screen" />
<script type="text/javascript" src="/plugins/fancybox/jquery.fancybox.pack.js"></script>
<script>
  $(document).ready(function() {
  $(".postimgprv").fancybox();
  });
</script>
<style>
.postimgprv > img {width:200px;}
</style>

Здесь мы подключили jquery и fancybox. Установили размеры превью в 200 пикселей, а также активировали плагин.

Открываем файл /include/parser.php, находим функцию:

function handle_img_tag($url, $is_signature = false, $alt = null)
{
	global $lang_common, $pun_user;

	if (is_null($alt))
		$alt = basename($url);

	$img_tag = '<a href="'.$url.'" rel="nofollow">&lt;'.$lang_common['Image link'].' - '.$alt.'&gt;</a>';

	if ($is_signature && $pun_user['show_img_sig'] != '0')
		$img_tag = '<img class="sigimage" src="'.$url.'" alt="'.$alt.'" />';
	else if (!$is_signature && $pun_user['show_img'] != '0')
		$img_tag = '<span class="postimg"><img src="'.$url.'" alt="'.$alt.'" /></span>';

	return $img_tag;
}

Меняем её на:

function handle_img_tag($url, $is_signature = false, $alt = null)
{
	global $lang_common, $pun_user;

	if (is_null($alt))
		$alt = basename($url);

	$img_tag = '<a href="'.$url.'" rel="nofollow">&lt;'.$lang_common['Image link'].' - '.$alt.'&gt;</a>';

	if ($is_signature && $pun_user['show_img_sig'] != '0')
		$img_tag = '<img class="sigimage" src="'.$url.'" alt="'.$alt.'" />';
	else if (!$is_signature && $pun_user['show_img'] != '0')
		$img_tag = '<a href="'.$url.'" class="postimgprv"><img src="'.$url.'" alt="'.$alt.'" /></a>';

	return $img_tag;
}

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

На этом пока закончим, спасибо за внимание!



Комментарии

Оставить комментарий:

Ваш e-mail не будет опубликован. Обязательные поля помечены *