photon blog

Блог о движках и SEO

Строительство digg-like сайтов на CMS Drupal vol.2

Понедельник, 30 июля 2007 г.
Рубрика: социальные сети
Метки:

..или обзор полезных плагинов для Drupal

Нукоторые плагины были подсмотрены здесь, некоторые были найдены мной на официальных сайтах.

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

В данной статье будет дан обзор полезным плагинам, которые расширят функциональность Вашего сайта.

Чистые ссылки

Включается в Administer -> Site configuration -> Clean URLs и позволяет формировать ссылки вида site.com/node/1 вместо site.com/?q=node/1.

Pathauto

Pathauto это полезный плагин, который автоматически создает псевдонимы для публикаций, страниц пользователей и др. Например, для блогов он саздаст псевдонимы site.com/blog/(имя пользователя) вместо site.com/blog/(id поьзователя), что намного удобнее.

Скачать можно здесь.

Me

Это простой модуль, который прописывает псевдоним для профиля пользователя вида site.com/user/me.

Скачать можно здесь.

XML Sitemap

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

Скачать можно здесь.

Google Analytics

Позволяет обойтись без ручной вставки JavaScript-файла в шаблон сайта.

Скачать можно здесь.

Node Profile

Позволяет вставить дополнительные поля в профиль пользователя (url, имя и тд)

Скачать можно здесь.

multiping

В отличие от стандартного модуля Ping, позволяет указать несколько сайтов для их автоматического пинга после обновления сайта.

Скачать можно здесь.

Tabbed Block

Позволяет делать блоки меню со вкладками. Каждая вкладка - это какой то отдельный блок.

Скачать можно здесь.

yadex_blogs

Этот модуль позволяет пинговать блог-службу яндекса не только при обновлении главной страницы, но и при обновлении каждого из блогов пользователей (если, конечно, у Вас включен этот модуль). При небольшой дописке сможет пинговать не только яндекс, но и pingomatic ;)

Скачать можно здесь.

Этот модуль для Drupal версии 4.7. Для того, чтобы он заработал на Drupal 5.1 необходимо поместить его в отдельную папку в папке /modules/ и создать файл yandex_blogs.info со следующим содержанием:

; $Id: throttle.info,v 1.3 2006/11/21 20:55:35 dries Exp $
name = yandex_blogs
description = tells yandex, that blogs have benn updates
package = Core - optional
version = VERSION
; Information added by drupal.org packaging script on 2007-01-30
version = "5.1"
project = "drupal"

PS на всякий случай: оригинал статьи доступен по адресу: http://photonblog.net/posts/stroitelstvo-digg-like-sajtov-na-cms-drupal-vol2/

Индексация новых сайтов в различных зонах

Воскресенье, 29 июля 2007 г.
Рубрика: Поисковые системы
Метки: |

На этой неделе я запустил несколько сайтов: Одни на пробу, другие на перспективу. Так получилось, что все они были в разных зонах. Результат индексирования их поисковиками также оказался разным.

C Google поблем не оказалось во всех случаях - от одного до 3х дней и часть страниц оказалась в индексе. С Яндексом же все сложнее.

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

подсайт.cайт.ru: сайт.ру уже давно находится в индексе, есть ТИЦ, хоть и небольшой.

Действия: Ставилась ссылка с главной страницы сайт.ру, добавлялись рсс в блогопоиск Яндекса, сам сайт блоггерский - пингует яндекс.

Результат: через 8 часов в индексе несколько страниц, через 3 дня все страницы (их пока около 50)

сайт.org.ru: домены такого типа можно бесплатно зарегистрировать в ripn.ru

Действия: добавлялись рсс в блогопоиск Яндекса, сам сайт блоггерский - пингует яндекс, ставились несколько ссылок с хороших сайтов через систему Sape.

Результат: 5 дней, в индексе нет ни одной страницы

сайт.biz: самыя дешевая, на данный момент, доменная зона на klikdomains.com

Действия: добавлялись рсс в блогопоиск Яндекса, сам сайт блоггерский - пингует яндекс, ставились несколько ссылок с хороших сайтов через систему Sape.

Результат: 5 дней, в индексе нет ни одной страницы

photonblog.net: этот блог, цена на klikdomains.com на доллар дороже чем .biz

Действия: ссылка на одном из блогов на первом сайте, ссылки с комментариев на других блогах, добавление статей в news2.ru

Результат: 7 дней, в индексе нет ни одной страницы

сайт.ru: самй дорогой из всех. Некоторые регистрируют за 10 дол., я же решил не рисковать, и зарегистрировал у проверенного регистратора за 20

Действия: ссылка с этого блога, ссылка с сайта в зоне org.ru (не экспериментального, а довольно старого, его также в яндексе нет), ссылка с первого сайта

Результат: 16 часов в индексе 1 страница, сутки - все (42 шт.)

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

Я делал несколько сайтов в зоне org.ru, ни одного нет в индексе яндекса (причем одному из этих сайтов 5 месяцев, посещаемость сейчас около 500 человек в сутки, есть небольшой тиц). Это немного странно, особенно если учесть то, что тут говорится о том, что в зоне org.ua все индексируется быстро и хорошо. Яндекс продался украинцам?:)

К сожалению, эксперимент с сайт.biz и сайт.org.ru мне придется прекратить, про изменения в остальных я сообщу.

Таким образом, если Вы планируете делать сайт на русском - не жалейте сильно денег на русские домены.

PS Жаль что я не регистрирую русские домены, хорошая рекламная статья получилась:)

PSS на всякий случай: оригинал статьи доступен по адресу:

http://photonblog.net/posts/indeksaciya-novyx-sajtov-v-razlichnyx-zonax/

Доводим до ума социальную сеть на Pligg

Воскресенье, 29 июля 2007 г.
Рубрика: социальные сети
Метки:

Появилась необходимость в создании еще одного dig-like сайта. На этот раз решил его делать на cms Pligg. Почему не на Drupal, о котором я рассказывал в предыдущей статье? Потому что для этого проекта хватит и возможностей Pligg.

Для начала решил посмотреть русифицированную версию (http://pliggrse.com/). Собственно создателей я могу только похвалить за их труд. Они добавили к оригинальному Pligg два дополнительных метода формирования url, но, к сожалению, ни один из них сразу после установки у меня не заработал как надо (два новых и один из стандартных).

Под «как надо» я подразумеваю то, что при переходе в какую-либо категорию, перехода туда на самом деле не происходит. Об исправлении этого бага будет написано чуть ниже.

Сразу скажу, что первоначальную настройку я делаю на пакете denwer. На хостинге лично я не проверял, но на форуме кто-то оставил ссылку на свой сайт на Pligg – там тоже не работало как надо.

Кстати, если Вы тоже будете настраивать на denwer, не забудьте скачать в дополнении к базовому пакету также и пакет расширений (http://www.denwer.ru/packages/php4.html). В нем есть любимое многими расширение curl. Для Pligg из этого пакета нужен модуль mb_string. Также на забудьте добавить в файл .htaccess следующую строку:

php_value error_reporting 7

Вернемся к Pligg. Добавленные в русской версии Pligg’а методы формирования url заключаются в транслитерации названий категорий или обозначении их цифрами. Собственно по SEO-соображениям это не очень подходит.

Таким образом, я решил настроить английскую версию (чтобы не было на сайте лишнего кода, касающегося транслитерации), а потом взять файл перевода из русский. Английскую версию можно взять на официальном сайте: http://www.pligg.com . На момент написания статьи последняя версия 9.7 Beta.

Про установку говорить не буду – она простая, опишу лишь изменения в модулях.

Разбираясь, почему именно не происходит перехода в нужный раздел, я добрался и до базы:) Собственно, баг заключался в том, что поле category_safe_name, в котором хранится название категории для ссылки сильно короткое – всего 64 символа. Так как в Pligg используется Unicode и в category_safe_name название записывается, прогнанное через функцию urlencode, то на один символ категории приходится 6 символов в ссылке.

Таким образом категории, в названии которых больше 10 символов, работали некорректно.

Для исправления этого просто увеличьте длину поля category_safe_name в таблице pligg_categories до 256 символов – это позволит создавать категории с длиной до 42-ух символов. Если Вы затрудняетесь в увеличении длины поля – выполните следующий sql-запрос:

ALTER TABLE `pligg_categories` CHANGE `category_safe_name` `category_safe_name` VARCHAR( 256 ) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL

Следующий баг, присутствующий как в английской, так и русской версии (хоть и заявлено, что его там исправили) это кракозябры в отображении букв «И» и «ш».

Исправить его можно следующим образом: добавить в файл libs/db.php в функцию connect после

$this->dbhost = $dbhost;
$return_val = true;
}

и перед return следующие строки

mysql_query("SET NAMES utf8_general_ci");
mysql_query("SET CHARSET utf8");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET SESSION collation_connection = 'utf8_general_ci'");

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

Ну и напоследок я очень рекомендую удалить следующую строку (из английской версии):

< div class="footer" style="display:none" >Powered By < a h ref="http://www.pligg.com/" >Pligg< /a >< /div >

из файла templates\yget\footer.tpl.

PS на всякий случай: оригинал статьи доступен по адресу

http://photonblog.net/posts/dovodim-do-uma-socialnuyu-set-na-pligg/

Строительство digg-like сайтов на CMS Drupal

Воскресенье, 29 июля 2007 г.
Рубрика: социальные сети
Метки:

За основу взята эта статья на английском.

Сразу скажу, что Drupal хоть и гибкий, но не такой уж и легкий. Если настроить его так, как будет описано ниже, в БД будет 63 таблицы и будет занимать она 1.4 мб, что, согласитесь, не так уж и мало для пустого сайта.

Для работы сайта потребутся вэб-сервер с PHP версии 4+, СУБД MySQL. Для тестирования на домашнем компьютере подойдет и пакет Denwer.

Необходимые скрипты и модули

Для начала необходимо скачать саму CMS и модули, необходимые для будущей социальной сети. На момент написания статьи последняя стабильная версия движка 5.1 - про нее и будет вестись речь далее. При скачивании модулей убедитесь, что скачиваете именно для версии 5.1.

Итак, список того, что нужно скачать:

Drupal 5.1

Модуль Vote Up/Down

Модуль Links

Voting API

Actions

Voting Actions

CRE recommendation

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

Установка CMS Drupal

Распакуйте архив с CMS в корневую папку вашего вэб-сервера, а архивы модулей в создавшуюся папку /modules/.

Если Вы устанавливаете CMS на пакет Denwer, то в файл .htaccess поместите следующую строку:

php_value error_reporting 7

Далее создайте MySQL базу данных.

Затем зайдите через браузер на Ваш сайт, укажите имя базы данных, логин и пароль пользователя и нажмите на кнопку Save. Скрипт сохранит эти настройки в файл sites\default\settings.php.

Далее зайдите на главную страницу сайта и создайте аккаунт администратора (перейдя по предложенной ссылке) и войдите под этим аккаунтом.

Установка модулей

Зайдите в Administer -> Site building -> Modules, выберите следующие модули и сохраните настройки:

• CRE

• Path

• Links

• Actions

• Storylink

• Vote up/down

• Voting API

• Voting actions

Далее выполните следующие действия:

• Перейдите в Administer -> User management -> Access control и установите:

- для vote_storylink: “create storylinks”, “edit own storylinks” только для зарегистрированных пользователей, “view storylinks” для обоих типов пользователей

- для vote_up_down: “use” только для зарегистрированного, “view” для обоих типов.

• Зайдите в Administer -> Site building -> Actions, это активирует модуль Actions.

• Зайдите в Administer -> Content management -> Content types и уберите для Storylink опцию “Promoted to front page”

• Зайдите в Administer -> Site configuration -> Vote up/down

- Пометьте опцию “Storylink”

- В “Vote widget settings for nodes”: “Vote widget style” выберите “Alternative +1 vote style”

- В “Vote widget settings for nodes”: установите “Vote widget display” и “Link display of vote points” в Disabled

- В “Vote widget settings for comments” отключите показ “Vote widget” и “Link”

• Зайдите в Administer -> Site configuration -> Voting actions

- Выберите Add и введите любое название (английское без пробелов) и описание

- В подразделе Conditions нажмите на кнопку “Add condition”. Далее выберите в соответствующих полях “Points”, “Vote”, “Is greater than”, “5″. Последнее число указывает при скольки голосах новость будет перемещена на гавную страницу, Вы можете ввести любое.

- В подразделе Actions выберите “Promote node to front page” и нажмите “Add action”

- Нажмите кнопку Submit

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

После этого скопируйте файлы node-storylink.tpl.php и template.php из папки modules\vote_up_down в папку themes\(ваша тема, по умолчанию garland).

Внимание! Если в папке с темой оформлений уже есть файл template.php, то заменять его не нужно. Необходимо вручную заменить функцию _phptemplate_variables в этом файле на такую же из modules\vote_up_down\template.php.

Если Вы затрудняетесь в этом - установите тему оформления, в которой этого делать не потребуется, например bluemarine (Administer -> Site building -> Themes).

Вот в принципе и все. Для создания новой новости в меню нужно выбрать Create content -> Storylink. После отправки новости она сразу не попадает на главную страницу, а попадет туда лишь после того, как наберет столько голосов, сколько Вы указали.

В настройках Drupal есть множество опций, позволяющих настроить любой внешний вид сайта.

Русификация сайта

• Зайдите в Administer -> Site building -> Modules и подключите модуль Locale

• Зайдите в Administer -> Site configuration -> Localization

- выберите Add language. Пометьте русский и установите его испоьзуемым по умолчанию

- выберите Import и загрузите файл с переводом, который Вы скачали ранее.

Теперь у Вас получился полурусский сайт (так как были установлены дополнительные английские модули). Для полной русификации необходимо сделать следующее:

• Зайдите в Управление сайтом -> Настройка -> Переводы -> Управлять строками

• В фильре задайте язык - русский, поиск в - Только непереведенные строки и нажмите поиск

• По очереди переведите все показанные строки

Как пример настроенного сайта могу показать вот этот сайт http://my.azona.ru. На нем в дополнении к модулям, указанным в данной статье, был активирован еще и модуль “Блог”.

Это первая статья, когда-либо написанная мной - так что просьба оставлять все замечания, предложения в комментариях к этой статье. Спасибо за внимание:)

PS на всякий случай: оригинал статьи доступен по адресу http://photonblog.net/posts/stroitelstvo-digg-like-sajtov-na-cms-drupal/

PPS Смотрите также вторую часть данной статьи.

Движки социальных сетей

Воскресенье, 29 июля 2007 г.
Рубрика: социальные сети
Метки: |

Сейчас стало модно создавать свои социальные сети. Вот и я решил не отставать от нее:)

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

Наткнулся на эту заметку. Вкратце: Pligg - тяжелый и громоздкий, drupal - легкий и гибкий. Так я и пошел искать, что за зверь такой drupal. Результатами моих изысканий стала следующая статья.