Сделаем это по-быстрому – habrahabr за пару часов

Главные вкладки

Аватар пользователя CALLlA CALLlA 19 января 2008 в 17:24

В последнее время на drupal.ru и habrahabr.ru частенько проскакивают темы вроде: «Делаю социальную сеть – бюджет пара сотен! Помогите сделать хабрастартап!» Отечественные аналитики связывают эту тенденцию с тем, что кризис на ипотечном рынке США тянет вниз за собой рынок в целом, что заставляет игроков на бирже вкладывать в высоколиквидные и надежные активы. Традиционно прибежищем инвесторов в смутные времена является золото, медь да стартапы на просторах бывшего СССР.

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

Для начала нам понадобится не выдвигающий жестких требований по количеству запросов к БД хостинг. Необходимый минимум памяти – 16 Мб.Скачиваем с официального сайта Drupal 5.6. Оттуда же мы будем черпать и необходимые дополнительные модули.

Инсталляция проходит легко и непренужденно: нужно всего лишь ввести название базы, префикс для таблиц, логин и пароль. После завершения инсталляции нас приветствует главная страница с предложением создать пользователя №1. Этот пользователь в дальнейшем будет обладать неограниченными правами. Благодаря имеющейся гибкой системе управлениями правами можно создавать различные категории пользователей и назначать полагающиеся им привилегии для управления контентом и структурой сайта, но для некоторых задач все же требуется именно пользователь №1. Кроме создания первого пользователя крайне необходимо подправить права доступа и убрать файл install.php. Заходим в список имеющихся модулей и добавляем к включенным обязательным модулям дополнительные модули ядра: Blog, Comment, Menu, Path, Poll, Profile, Search, Taxonomy, Tracker, Upload.

Создаем для начала 2 словаря: Вид креатива и Теги креатива. Для первого словаря создаем набор тегов: переводы, подкасты, ссылки... Ставим условие обязательного наличия тега в материале из этого выпадающего списка. Для второго задаем свободный множественный выбор тегов – пользователи будут самостоятельно задавать теги в любом количестве. Оба словаря связываем с записью в блоге. При создании креатива пользователю будет предложено выбрать/ввести теги.

На следующем этапе облегчим пользователям публикацию материала. Из значительного количества WYSIWYG-редакторов я бы выделил 2 – BUEditor и TinyMCE, но поскольку 2 редактора для 1 сайта многовато, то оставим BUEditor drupal.ru, а себе установим модуль TinyMCE. Здесь нужно понимать, что для работы с текстом необходим непосредственно сам редактор (его легко найти на сайте автора tinymce.moxiecode.com ). Создаем профиль в редакторе для зарегистрированных пользователей, настраиваем видимость и необходимые кнопки. Также нужно не забыть про набор разрешенных тегов, иначе пользователи замучают вопросами: «Почему моя таблица/картинка не отображается в блоге?» Для удобной работы с картинками устанавливаем модуль IMCE, настраиваем необходимые ограничения по объему и размеру картинок. IMCE хорошо работает с вышеустановленным WYSIWYG-редактором, но если Вы «настоящий профессионал», то никто не мешает отключать редактор и творить тегами без посредников.

Будем считать, что создавать креативы мы уже научились, сейчас попробуем их выводить в нужном нам виде. Скачиваем и устанавливаем группу модулей Views, а также Vote up/down и Voting API. В настройках модуля Voting API выставляем самое оперативное обновление результатов, в настройках Vote up/down привязываем голосовалку к записи в блоге, устанавливаем голосовалку в виде +1/-1 (кнопки можно своровать на хабре или скачать на famfamfam.com), настраиваем доступность не только в статье, но и в тизерах. Подобные настройки осуществляем и для голосования по комментариям. Кстати, о комментариях. В два клика включаем комментарии к блогам и не забываем установить их древовидный вид.

С помощью Views создаем страничный вид для главной страницы. Это будет обычный список из 10 тизеров. В движке даже есть готовый хабракат(break). Поскольку на главную выводятся только самые достойные из актуальных постов, то отфильтруем их по голосам и отсортируем по дате создания. В фильтрах после установки модулей для голосования появляется больше десятка вариантов фильтрации, так что фильтровать можно, как душе угодно. На случай планируемых хабрареволюций в фильтры следует добавить проверку на опубликовано\не опубликовано и, например, на роль или имя автора. Это очень поможет в деле будущих зачисток –несколькими движениями мышки можно будет редактировать прошлое (идею подсказал некто Оруэлл в топике о ретушировании прошлого «1984»).

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

Чуть не забыл о самом важном элементе сайта – облаке тегов. Хорошо, что вспомнил, а то какой же это был бы Веб 2.0! Он реализуется непривычно скучно и просто: устанавливаем tagadelic и привязываем его к словарю. Всё, приставка 2.0 готова.

В этом материале ни слова не сказано о дизайне, верстке. Да много о чём не сказано, упомянуты лишь манипуляции с модулями. Здесь не упоминались хуки, сниппеты, да и вообще ни слова о php. На мой взгляд, если человек задается вопросами из 1 абзаца, то начинать ему следует именно со стандартных вещей. И если у Вас действительно есть идея, если Вы делаете толковый САЙТ для людей, а не очередных одноклассников или 125-й клон ютуба, то все приложится – найдутся ресурсы для оригинальной кастомизации открытых решений, написания какого-то функционала с нуля. А если же проект «не пошел», то дело скорее всего не в том, что Вам не хватило $1000000 (ненужное количество нулей затереть) для технической реализации.

Уже после написанного поймал себя на мысли, что не упомянуты добрым словом ЧПУ, реализация компаний и комьюнити. Ладненько, пора заканчивать, а то суббота да и так «слишком много букв».

Комментарии

Аватар пользователя Zlata Zlata 19 января 2008 в 19:33

вот не лень писать было )))))
молодец )))
то же самое почти сейчас делаю, потому и обратила внимание)

Аватар пользователя Nodachi Nodachi 19 января 2008 в 21:26

Есть уже готовый настроенный сайт на друпале по типу хабра. Ставим дизайн и все работает Wink Только карма там... Короче, можно голосовать за любой документ любого типа или комментарий. Баллы зачисляются автору (или снимаются, если голос отрицательный). Если нужна карма замудреная, со своим алгоритмом - придумываем алгоритм и заказываем кодеру. Все остальное есть и работает Wink
Тут на форуме цену вопроса спрашивали. Отвечаю: не продается Smile Вырастил сам, кровью и потом залил книжки умные. Даже бартер был - моя верстка его код. Скажу так: все невозможное возможно Wink Правильно сказал автор - если делаете реально сайт, то все получится. Ну а если быстро и для бабок... Я клонов как конкурентов не боюсь - тут еще есть наука такая интересная - SEO. И если вам удастся заказать и получить достойный клон за определенную сумму, я буду рад за вас. Но далеко не факт, что у вас хватит бабок на достойный пиар своего детища - тут ценники повыше и пошире будут Wink

Аватар пользователя CALLlA CALLlA 20 января 2008 в 1:27

http://callla.habrahabr.ru/blog/34268.html

Забавно, уже на главной хабра Lol
Комментарии, вроде, положительные, но больше всего запомнился вот этот(самый заминусованый)

Ждем наплыва говносайтов убийц-хабра завтра. Уеблы уже начинают работу...

Всё на самом деле так печально?

Аватар пользователя KCEOH KCEOH 20 января 2008 в 5:13

Подписался бы под тем комментом.
Скорее недоделок будет дофигища. Ибо модули-модулями, но чтобы это все работало вместе, как часики - сложно...
1) Та же система баллов - нормальную карму надо программить.
2) Надо убирать дофига всякого мусора, вроде "прочесть далее" и "Х комментариев", менять на одну какую-то фразу.
3) Организовывать друзей в отдельный блок в профиле юзера.
4) Поиск, кеширование, картинки, форум... Хотя форум блогами заменяется вполне.

> В этом материале ни слова не сказано о дизайне, верстке.
Где-то интересная фраза была, что дизайн на друпале = 50% времени работы. Соглашусь... Ибо переопределение всяких переменных, написание своих функций, и юзание хуков - самое оно...

За пост спасибо, может пара умных людей сюда и придет... вместе с кучей нубов, задающих тупые вопросы... Sad Но это уже издержки производства, что называется...

PS картинка уродская... лучше б не было.
PPS на хабре не реган, неужели там WYSIWYG редактор, а не редактор BB-кодов?

Аватар пользователя demoemo demoemo 20 января 2008 в 8:01

Я вот долго думаю и не могу понять что это!? Сначало это просто место где тебе приятно, а потом это куча фанатиков, которые говорят о какоей-то карме. Мне кажеться явление хабры культивировано вместе с БОР и тому подобной нечистью. Интернет заболел!!!

Аватар пользователя KCEOH KCEOH 20 января 2008 в 10:24

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

Аватар пользователя Valeratal Valeratal 20 января 2008 в 21:26

про оруэла понравилось Smile
что же касается кармы, в том виде которая на хабре - толку о нее- лемминги голосуют против тех, кто против их - в от и вся регуляция - победа серости короче

Аватар пользователя beerman beerman 16 февраля 2008 в 6:07

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

ЗЫ. Не пинать, третий час разбираю друпал Wink

Аватар пользователя CALLlA CALLlA 16 февраля 2008 в 18:23

Не думаю, что разработчику тяжело набрать
http://drupal.org/project/cck и далее вместо сск подставлять названия других модулей из текста
Если же уже на этом этапе возникают сложности, то, может, стоит не мучать себя и других, а пойти заняться чем-нибудь другим.

Аватар пользователя beerman beerman 21 февраля 2008 в 6:29

"ЗЫ. Не пинать, третий час разбираю друпал ;)"
Спасибо, теперь буду знать.
ЗЫ. и незацем так орать (с) Сова Wink