Настройка Drupal

Построить систему классификации (http://firsthand.ru/node/8)
Обдумать иерархию категорий и меню
Создания layout-a (т.е. нужно понять где и какой блок должен быть и воспроизвести эту структуру в Drupal)
Создать или найти подходящий рисунок для заголовка
Настроить SMTP сервер (низкий приоритет)
Настроить CRON (низкий приоритет)
Наполнение сайта контентом

О чём будет этот блог?

Я завёл этот блог потому что хочу попробовать себя в роли SEO (или если быть ещё точнее в роли манимейкера). Этот способ заработка меня интересует и присматриваюсь я к нему уже давно. Так что теперь я окончательно созрел и решил попробовать его на “вкус”. Я не собираюсь рассматривать эту деятельность в качестве основного источника дохода (как в основном делают остальные), а рассматриваю его как дополнительный источник заработка (чуть позже поясню почему). Блог же нужен для того чтобы спустя какое-то время можно было проанализировать свои шаги и поступки в этом деле, плюс может ещё кому-нибудь пригодиться полученная мной полезная информация.

В основе движения манимейкеров, насколько я понял, лежит достижение какой-либо поставленной перед собой цели (будь то покупка квартиры, машины и т.п.) и достижение её за счет использования навыков заработка в сети. Не буду исключением и я, только вот цель я выберу более реальную т.к. насколько я знаю никто из манимейкеров ещё не заработал на квартиру или свою машину, но зато много кто имеют хотя бы $100 со своего маленького “SEO-огорода”.

Так что цель моя пока звучит так: добиться дохода в $1000/мес используя “белые” способы заработка в Интернете.

Эта цель содержит следующие контрольные точки:

№0. Заработать больше $0
№1. Заработать $10
№2. Заработать $100
№3. Заработать $500
№4. Заработать $1000 и не опускаться ниже этой отметки в течении трёх месяцев
№5. Обновить список целей

Нулевая точка чисто символическая достижение её будет означать что я взял старт. Достижение же первой точки будет означать что я взял старт в правильном направлении. По достижении второй точки я думаю уже буду обладать достаточным опытом чтобы сделать прогноз о времени достяжения третей точки (поясню что навыки в SEO у меня пока нулевые, но об этом в след. посте). Четвёртая точка равна величине дополнительного заработка который я хочу иметь, достижение её и последующее нахождение на этой отметке будет означать что я имею хоть и шаткий, но всё же постоянный источник дохода. Ну а пятая контрольная точка будет означать анализ всей проделанной работы и ответ на вопрос: “стоит ли овчинка выделки и стоит ли продолжать?”

Ревизия имеющихся способностей и навыков

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

Web-программирование или просто программирование (при необходимости могу что-то подправить или написать с нуля, считаю себя профессионалом в этой области — текущая оценка 5 балов)
Администрирование *NIX систем (ИМХО довольно важный навык т.к. приходится самому всё устанавливать и настраивать — текущая оценка 4 балла)
Способность творить что либо, будь то новые статьи или посты к блогам (тут довольно печально всё т.к. мало уделял внимания этому занятию — текущая оценка 2-3 балла)
Талант менеджера т.е. способность общаться с людьми и управлять ими (думаю мне придётся часто общаться с кем либо, возможно даже спустя какое то время потребуется делегировать часть своих обязанностей кому либо и следить за результатами работы так что ИМХО этот навык будет очень важен — текущая оценка 2 балла)
Понимание основ заработка в Интернет и умение ими пользоваться (т.к. ничего ещё толком не заработал то и опыта соответственно нет — текущая оценка 1-2 балла)
Пока всё, наверное есть ещё какие-то способности по мелочи… но их учитывать пока не буду.

Поиски CMS

Вчера зарегистрировал себе доменное имя для одного из потенциальных сайтов. И встал перед вопросом какую CMS выбрать… Сейчас есть два популярных языка для Web-разработки, это PHP и Ruby (ASP.NET в расчёт не берём т.к. он используется в основном для Enterprise приложений).

Прежде чем рассказывать о поисках я хочу рассказать о том чего я ожидаю от CMS:

возможность добавлять свои страницы и группировать их в виде древовидной структуры
наличие каких либо тем (чтобы не с нуля разрабатывать дизайн)
наличие русифицированной версии
наличие обновлений (хотя бы раз в два-три месяца)
CMS не должна быть слишком навороченной и сложной для понимания
мне нужна CMS для создания портала
должна быть бесплатной
Нормальных CMS написанных на Ruby я так и не нашел… есть попытки народного творчества довольно сомнительного качества, но не более. Так что этот язык и всё что написано на нём я исключаю из поисков. Остаётся PHP.

Хороший обзор CMS представлен на сайте http://catalogcms.ru, думаю любая из перечислнных в TOP10 CMS меня устроит, дело за малым: нужно выбрать какая именно. WordPress отпадает сразу т.к. я его уже использую и хочу попробовать что-то новое. Joomala думаю тоже исключается т.к. слышал что она не очень быстрая, да и некоторые моменты работы с ней мне не понравились (я до этого уже с ней сталкивался). Из известных мне CMS остаются Drupal и Typo3. Думаю я для начала останавлюсь на Drupal, а для какого-нибудь другого проекта опробую Typo3 или любую другую CMS из TOP10.

Побежал ставить Drupal :)

Drupal or not Drupal

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

Кстати на Хабрахабре как раз сегодня вспыхнул холивар вокруг Drupal-а, одни ругают, а другие хвалят. Но это меня не останавливает т.к. чужое мнение это конечно хорошо, но ещё лучше своё мнение построенное на собственном опыте.

P.S.

Кстати, чтобы держать конфигурирование Drupal-а под контролем я завёл специальную страницу для этого. Чуть позже наверное стоит поднять какую либо систему для более удобного управленя задачами, например Redmine.

Дела за 14 декабря

Засел сегодня основательно за чтение статей о Drupal. Нашел очень наплохой цикл статей о нём. Правда он для 5 версии, но всё что там описано подходит и для 6. После прочтения некоторые моменты работы стали более-менее понятны. Например, разобрался с таксономией и теперь имею представление о том как строить классификаторы в Drupal, этим я теперь и займусь.

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

P.S.

Небольшое наблюдение о Drupal. Все программные продукты с которыми я сталкивался можно классифицировать :) по двум большим группам. В первую группу попадают продукты который начинают сразу же работать после установки “из коробки”, а во вторую те которые надо настроить перед использованием. Угадайте в какую категорию попадает Drupal? Во вторую, потому как прежде чем выложить сайт в интернет и показать пользователям, да так показать чтобы небыло стыдно, надо проделать немало работы по его настройке. Поэтому если вы начинаете использовать его, то помните об этом.

CRON+Drupal

Млять, оказывается в крон-файле после строки с задачей должен быть переход на новую строку без него задача не выполняется. Млять, за столько лет существования никсов это нельзя было пофиксить? т.е. учитывать отсутствие перевода строки и наличие конца файла??? Зато одной задачей стало меньше

Ещё несколько слов о CRON

Поставил я модуль который позволяет делать отложенную публикацию документов в Drupal. А он для своей работы использует CRON. Способ который я настроил изначально почему-то не способствовал публикации статей, и я решил опробовать метод который я однажды заметил просматривая статьи о настройке CRON в Drupal. Заключается он в том что CRON должен вызывать скрипт drupal.sh, а не просто дёргать cron.php:

*/45 * * * * /var/www/you-site/scripts/drupal.sh —root /var/www/you-site/scripts/ http://localhost/cron.php
Эту строку надо использовать в crontab.

Кстати проверьте что у вас установлен пакет php5-cli (если открыть файл drupal.sh можно увидеть что этот консольный интерпретатор используется для запуска, и если он не стоит, то ничего работать не будет)

Далее нужно сделать этот файл исполняемым выполнив команду:

chmod ug+x drupal.sh
Если у вас возникли проблемы с этим скриптом, то добавьте в конец строки:

> /tmp/drupal-cron.log 2>&1
и поменяйте время запуска скрипта с 45 минут на 1.

Дальше стоит подождать минуту и посмотреть содержимое /tmp/drupal-cron.log скорее всего в нём будет сообщение которое поможет вам устранить проблему.

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

P.S.

Не забудьте вернуть на место все изменения сделанные для отладки скрипта.

Составление классификатора

Настало время немного рассказать о том что за сайт я хочу создать для моего первого эксперимента.

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

Так как сайт мой будет жить на Drupal я решил начать с составления классификатора и вот что у меня пока получилось. Я решил выделить два словаря: овощи и фрукты (думаю тут с классификацией ни у кого проблем возникнуть не должно), а вот с терминами полная беда. Я попробовал найти в интернете классификаторы овощей и фруктов и нашел мало полезной информации об этом, а та что была найдена представлена на моей странице, но проблема в том что лично у меня (да и наверное у вас) очень часто будет возникать проблема связанная с тем к какому термину отнести тот или иной продукт. Так что скорее всего эти термины использоваться не будут, а будут просто две большие группы (овощи и фрукты) в которых эти продукты будут отсортированы по алфавиту. Классификация же по месту произрастания (тропики, умеренная зона и т.п.) тоже проблематична т.к. как правило определить принадлежность продукта к той или иной климатической зоне, плюс врядл кто-то будет искать продукты руководствуясь этим классификатором. Но Drupal хорош тем что в любой момент можно добавить новый классификатор и связать его с имеющимися в БД документами так что если в будущем меня осенит идея связанная с делением овощей или фруктов, то реализовать её будет несложно.

P.S.

У меня тут после уволнения с работы накопилась довольно толстая стопка непрочитанных книг (раньше я читал их в метро) и похоже они останутся в таком состоянии ещё надолго т.к. я решил наконец-то прочитать купленную давно книгу “Оптимизация и продвижение сайтов в поисковых системах” чтобы лучше разбираться в предмеетной области в которой я буду работать сейчас.