Блог пользователя Ромка



ШвабрашвабрШвабрашвабр 2 — описание

Вступление

В мае 2008 года я сделал демонстрационную сборку CMS Drupal, работающую как коллективный блог с элементами социальной сети и получившую название Швабрашвабр. В основу этой сборки лег Друпал 5 версии. На тот момент уже был доступен Drupal 6, но под него еще не были портированы все необходимые для реализации задуманного функционала модули. В предложенной сборке был реализован следующий функционал:

  • зарегистрированные в системе пользователи могли вести собственный блог, оставлять комментарии к записям в блогах и голосовать за посты и комментарии к ним.
  • Отданные голоса влияли на карму (рейтинг) автора поста или комментария (отданный голос за пост имел больший вес, чем голос за комментарий); пользователи набравшие определенный рейтинг автоматически получали роль "продвинутого пользователя", что давало им дополнительные возможности, например, создавать коллективные блоги.
  • Коллективный блог — блог записи в котором посвящены определенной тематике. Владелец блога (его автор, создатель) мог определить его тип:
    • в открытый блог могли писать все желающие пользователи сайта,
    • в закрытом блоге публиковать записи могли только пользователи "подключившиеся" к нему, при этом заявку на подключение к блогу мог отправить любой желающий, а решение принять ее или нет принимал владелец блога,
    • логика работы приватного коллективного блога была аналогична логике закрытого, за исключением того, что попасть в него можно было только по приглашению владельца блога, просто так послать заявку на подключения к блогу пользователи не могли.
  • Главная страница сайта представляла из себя список записей в блогах, набравших определенный пользовательский рейтинг, таким образом была реализована "социальная" составляющая проекта — на главную страницу сайта попадали только те записи, которые интересны посетителям сайта. Кроме того, список всех существующих записей в блогах был доступен на отдельной странице.
  • Также на сайте были реализованы механизмы внутренней почты, "дружбы" между пользователями и т.д.

Спустя полгода (в ноябре 2008 года) я реализовал аналогичный описанному выше функционал уже на шестом Друпале, но на тот момент еще не было возможности безболезненно портировать существующую Швабрушвабр с пятого Друпала на шестой. Эта сборка вместе с её описанием, а также большой статьей посвященной Друпалу была опубликована в журнале PC Magazine/RE, я очень рекомендую, перед дальнейшим чтением этого материала прочитать статью из PC Magazine, так как здесь я не буду описывать основные используемые понятия, которые были описаны в той статье. Кроме того, рекомендую прочитать две других моих статьи, посвященных Друпалу, также опубликованных в PC Magazine/RE, первая доступна по адресу http://pcmag.ru/solutions/detail.php?ID=36589, вторая будет опубликована в ближайшем номере журнала.

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

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

  • каждый пользователь может указывать свой статус, который выводится в виде микроблога в стиле Твиттера,
  • каждый пользователь может создавать персональные фотогалереи и загружать в них свои фотографии,
  • каждый пользователь имеет персональную гостевую книгу (как "стена" во вКонтакте),
  • каждый пользователь имеет список друзей и последних посетителей своего профиля,
  • кроме того, каждый пользователь при регистрации должен выбрать свой тип (в этой реализации — Исполнитель или Заказчик, но эти названия должны зависеть от конкретного проекта) и, в зависимости от типа, ему будут доступны различные настройки своего профиля.
  • на главную страницу теперь могут попадать не только материалы, набравшие определенный рейтинг, но и материалы продвинутые модератором,
  • и т.п.

Блоги теперь являются не основным элементом проекта, а лишь его небольшой частью.

В этой статье я покажу как решить следующие задачи:

  • как подготовить сайт на пятом Друпале к переносу на шестой и как осуществить этот перенос. На самом деле, в этой операции нет ничего сложного, в некоторых случаях достаточно просто скачать c drupal.org и установить шестой Друпал и все модули (их версии под Drupal 6), которые были использованы в сборке пятого Друпала, после чего подключить к этой сборке базу данных от старого сайта на пятом Друпале и запустить скрипт update.php. Этот скрипт сам выполнит все необходимые действия. К сожалению, в случае с Швабройшвабр будет не все так просто, после выполнения указанных действий сборку еще немного надо будет обработать напильником, в частности, нужно будет заново пересоздать "представления" (views — списки документов, которые используются, например, для генерации главной страницы сайта и страницы со списком всех записей в блоге), а также портировать "списки друзей" из устаревшего модуля BuddyList2 в новый User Relationships.
  • Как настроить "представления" для реализации старого (списки всех записей в блогах и записей в блогах для главной страницы) и нового функционала (списки фотогалерей и фотографий).
  • Как перенести списки друзей со старого сайта в новый (из BuddyList2 в User Relationships).
  • Как реализовать функционал персональных фотогалерей практически нативными средствами Друпала (Views и CCK) без применения сторонних модулей типа image или gallery2.
  • Как создать "стену", "статусы", "последних гостей" и вывести все это в профиле юзера.

Готовый пример, разработанный в рамках этой статьи вы можете скачать по ссылкам:

  1. Дистрибутив Друпала 6.14 со всеми необходимыми модулями
  2. Дамп базы данных

В предложенной сборке создано 4 юзера: admin, Заказчик, Исполнитель, Лошадь. У всех пароль — 1111 (к сайту Швабрашвабр.ру он не подходит ;)).

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



ШвабрашвабрШвабрашвабр2 — анонс

Сегодня 8 ноября 2009 года в 2 часа 21 минуту ночи по Московскому времени сайт Швабрашвабр.ру перешел на второй уровень... то есть был обновлен до новой версии. В ближайшее время я напишу подробную статью и запишу скринкасты, описывающие процесс обновления. В двух словах о новых фишках:

  1. Сайт переехал с пятого на шестой Друпал (с сохранением всех данных).
  2. Пользователи могут создавать персональные галереи изображений и публиковать картинки в них.
  3. Пользователи могут вести собственный микроблог (в стиле твиттера).
  4. Пользователи могут оставлять записи в чужих профилях (как на стене во вКонтакте).
  5. Пользователи при регистрации должны выбрать свой тип: заказчик или исполнитель, в зависимости от выбранного типа в профиле становятся доступными различные типы настроек.

Посмотреть описанные выше возможности можно на примере профилей: Заказчик, Исполнитель, Лошадь.

Также вы можете скачать сборку:

  1. Дистрибутив Друпала 6.14 со всеми необходимыми модулями
  2. Дамп базы данных

В предложенной сборке создано 4 юзера: admin, Заказчик, Исполнитель, Лошадь. У всех пароль — 1111 (к сайту Швабрашвабр.ру он не подходит ;)).



Юмор на ШвабрашвабрНесколько картинок к Новому Году








Еще больше, в том числе и новогодних, карикатур на Зеруте.



ШвабрашвабрШвабрашвабр на шестом Друпале

На сайте журнала PC Magazine опубликована статья написанная мною при поддержке Александра Графова. В статье рассказывается о возможностях CMS Drupal 6 и приводятся инструкции для сборки двух сайтов, в том числе и Швабрышвабр — коллективного блога с элементами социальной сети.

Внимание! Выкладываю готовую сборку Швабрашвабр 6. Если по каким-то причинам у вас нет желания или возможности собирать сайт самостоятельно, то вы можете скачать дистрибутив Швабрашвабр 6 (6,5 Mb) и дамп базы для Швабрашвабр 6 (250 Kb). Первый архив необходимо распаковать в корень вашего веб-сервера, второй импортировать в БД, например, при помощи PhpMyAdmin. После этого нужно в файле "sites/default/settings.php" в переменной $db_url указать настройки для соединения с базой данных, после чего сайт будет доступен по адресу http://localhost/shvabrashvabr6.

Если у вас нет настроенного веб-сервера, то вы можете скачать Денвер с интегрированной в него сборкой Швабрашвабр 6 (18 Mb). После запуска скачанного файла следуйте инструкциям инсталлятора, по завершении работы которого вам локально будут доступны сайты http://shvabrashvabr.lc — коллективный блог с элементами социальной сети и http://intranet.lc — корпоративный интранет-сайт.

Логин/пароль администратора каждого демо-сайта: admin/1111.

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



ШвабрашвабрОпять проблемы с DrupalValueHosting.com

Три дня сайт пролежал из-за проблем с хостингом (злополучный DVH уже не первый раз взламывают). Перенёс все проекты кроме Швабры к другим хостерам, саппорт хостера отписался о том, что сейчас Швабру перенесли на новый более быстрый и надежный сервер... Подожду некоторое время, возможно останусь тут, хотя вероятность этого не очень высокая...



ШвабрашвабрМодуль OG Alias для шестого Друпала

Портировал под шестой Друпал свой модуль OG Alias. Теперь псевдонимы генерируются не только для материалов типа "Запись в блог", но и для "Коллективных блогов".

В ближайшее время напишу инструкцию, по переводу Швабрасайта с пятого Друпала на шестой.

 

СпортSportswoman

  RSS-материал

Back to top