Плагин для вставки attach’ей в форум bbPress

Опубликовано в рубрике "Всячина", 9 февраля, 2010.
Тэги: , , , автор:

Форум на bbPress – легковесный форум на основе идеи WordPress’а – минимум встроенной функциональности, а рюшечки добавляется плагинами. Фактически, из этого форума, как и из вордпресса,  можно слепить все, что угодно.

image

Что я хотел получить в итоге? У меня на этом хостинге довольно мало места — 500мб всего, зато у меня есть ФТП, где места просто завались. Идея в том, что аттачи передаются по ftp на другой сервер,а потом по http забираются оттуда в посты. Эдакая распределенная система получается.

Что умеет плагин?

 

  • AJAX-вставка аттачей. Аттач можно загрузить фактически куда угодно. Сейчас работает загрузка на ftp, но для изменения места загрузки нужно поменять всего две функции — bsvi_move_to_ftp и bsvi_ftp_delete
  • В процессе редактирования используются привычные bb-тэги типа [attach="25, cool_img.jpg"], но при отправки они превращаются в html и не требуют никакой обработки (в базе они тоже хранятся в html-виде). При нажатии на кнопку редактирования html преобразуется обратно в bb-тэг.
  • Если пользователь загрузил аттач, но не использовал его в тексте, он автоматически удаляется.
  • при редактировании можно стереть тэг с аттачем, тогда аттач удаляется.
  • Правильно работает удаление аттача при удалении поста.
  • Если загружается картинка, она показывается в виде картинки, если картинка слишком большая, то показывается миниатюра с ссылкой на скачивание, если загружается другой файл, дается ссылка на его скачивание

 

Для вставки применена революционная технология, которой мне не хватало на многих форумах – файлы загружаются отдельно, а вставляются в посты в виде тегов. Таким образом, можно показывать картинки по ходу повествования. А то обычно читаешь текст поста, а потом ищешь внизу в аттачах про что шла речь – жутко неудобно.

Скачать плагин можно тут:

 

Процесс разработки плагина – на форуме http://bsvi.ru/forums/topic/7

 

Я не делал красивых рюшечек типа установки одной кнопкой и интернационализации, просто жалко тратить время на то, что мне не нужно.

Для установки плагина нужно:

  1. Выполнить следующий sql-запрос в базе bbPress’a

    CREATE TABLE `bb_ftpattach` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `post_id` int(10) unsigned default ‘0’,
      `user_id` int(10) unsigned default ‘0’,
      `user_ip` varchar(20) default NULL,
      `size` int(10) unsigned default ‘0’,
      `is_image` tinyint(1) unsigned default ‘0’,
      `is_resized` tinyint(1) unsigned default ‘0’,
      `filename` varchar(255) default NULL,
      `status` tinyint(3) unsigned default ‘0’,
      PRIMARY KEY  (`id`)
    ) DEFAULT CHARSET=utf8;
  2. Скопировать файлы в папку my-plugins
  3. Поправить параметры в файле ftp_attach.php до строчки define( ‘BSV_ATT_UNUSED’, ‘0’ );
  4. Создать на ftp сервере каталог, мя которого указывается в $bsvi_attach[‘path’]
  5. Запустить плагин в панели управления bbPress

 

Ну и на последок (да, я прекрасно понимаю, что этого никто делать не будет), если кто решиться усовершенствовать плагин, просьба отписаться.




Комментарии

Создать новую ветку комментариев


Вы должны войти или зарегистрироваться чтобы оставить комментарий.