Про раскрутку блогов

Прошла неделя с того момента, как [info]fritzmorgen дал ссылку на тест своего имени. Вопреки моим ожиданиям, сайт не упал, хостер грязно не ругался, а вот с рейтингом в Яндекс.Блогах случилось интересное.

Табличка с результатами теста была устроена так, что под ней вставляется вот такая строчка:

Идея — fritzmorgen, программирование — Шура Люберецкий

Несмотря на то, что далеко не все проходившие тест вставляют результаты в свой блог, за неделю удалось получить порядка 400-500 новых ссылок на себя. В общем, создание популярных тестов для блоггеров — еще один путь к покорению писькомерок Яндекса.

Думаю, пример [info]stanislav_mikov, занимающего сейчас 40 строчку яндексовского рейтинга, только подтверждает это. 55 тысяч ссылок с тестов «какая статья УК больше всего похожа на ваш блог» — это вам не сиськи по субботам постить.

Подвиг во имя халявы

Ради создания у буржуев впечатления «молодой динамично развивающейся компании» заделал «левый» сайт.

Доктор, это диагноз?

PS Сайт нужен для заказа семплов у разнообразных буржуйских контор. Почему в России никто не продает разъемы с шагом 0,8 мм?

Про Jabber

Сделал себе кошерный jabber-аккаунт. Теперь все пользователи Jabber могут достучаться до меня, используя адрес shura@luberetsky.ru.

Также идет раздача jabber-аккаунтов на моем домене, присоединяйтесь. Jabber — это не мыло, так что это все бесплатно (подсказка: одмин любит пЫво).

Новости вордпрессоводства

А как вам нравится показанная в ролике тема P2 для WordPress?

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

Наверное, уже года через три мы увидим первый «конструктор» движков для сайтов, позволяющий при минимальных навыках программирования «сделать» несколькими кликами мышки форум, дейтинг, интернет-магазин — и вообще любой движок для более-менее типового сайта (или не очень типового — как гибрид дейтинга с интернет-магазином :) ). Фактически, нужна лишь методика «конструирования» структуры базы данных и некоторое количество «типовых» скриптов, которые объединяет в единое целое какой-нибудь очень визуальный редактор.

Планы на ближайшее будущее

Относительно контента сайта есть пара интересных мыслей.

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

Второе. Есть мысль написать некоторое количество записей про спутниковое ТВ. Во-первых, чисто в SEOшных целях — для привлечения посетителей на сайт, во-вторых — для более «тематической» поисковой рекламы. Естественно, если это «всех бесит» — то писать не буду. В планах — посты от «простейшего уровня» (как самому поставить «тарелку») до таких вопросов, как использование кардшаринга. Кому-нибудь из читающих мой блог эта тема интересна?

WordPress 2.7 и nginx

Не так давно я писал о том, как заставить работать «планировщик» WordPress на сервере с nginx. В новой версии WordPress 2.7 серьезно переработан «движок» HTTP-запросов, теперь все запросы к серверам реализуются единообразно, с использованием классов.

Хорошо это или плохо — не знаю, например, все задачи планировщика — отправить запрос к скрипту wp-cron.php — реализовывались в две строчки, а теперь происходит несколько вызовов разнообразных функций. Впрочем, тут у нас не Zilog Z80, не AVR и не PIC, и, наверное, усложнение операций ради снижения количества потенциальных глюков вполне оправдано.

Теперь для того, чтобы вставить задержку, достаточно все в том же wp-includes/cron.php заменить строку

wp_remote_post($cron_url, array('timeout' => 0.01, 'blocking' => false));

на что-нибудь наподобие

wp_remote_post($cron_url, array('timeout' => 0.5, 'blocking' => false));

Аватары из ЖЖ

Хочу обрадовать всех своих читателей из ЖЖ: теперь на моем сайте у комментаторов, указавших в качестве сайта свой ЖЖ либо воспользовавшихся OpenID (жежешечным, другие сервисы пока не поддерживаются) будут показываться их аватары. Делает это замечательный плагин для WordPress под названием Avalicious! — именно так, с восклицательным знаком.

Предлагаю желающим протестировать эту фичу в комментариях к записи.

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

Я вернулся

Обновление прошло вполне успешно.

Из глюков — у кого-то временно не отображаются ЖЖшные человечки перед никами комментаторов. В остальном все хорошо.

Завтра попробую пофиксить глюк.

UPD Да, некоторые текстовые собщения на сайте внезапно «перевелись» на английский. Это не страшно.

WordPress 2.7.1 мне даже нравится.

WordPress 2.7.1 и OpenID от Александра Никулина

К WordPress существует минимум три плагина, позволяющих писать с использованием OpenID. Мне больше всего нравится довольно старый плагин, написанный Александром Никулиным. К сожалению, автор не занимается адаптацией плагина к новым версиям WordPress, в частности — к 2.7.1. Приходится делать все самому.

В общем, доработал этот плагин напильником для работы с WordPress 2.7.1 — последней на данный момент версией. Нужны бетатестеры, желательно — имеющие аккаунт в ЖЖ. Кто может — отпишите в комменты. «Работы» буквально на 5 минут.

Все, тестеры не нужны. Спасибо [info]vanchez.

Про web-статистику

Читаю книжку Н. В. Манвелова «Жизнь и смерть на корабле Российского Императорского флота».

На фоне прочей интересной информации обратил внимание на главу про несение вахт. На корабле сутки делились на шесть четырехчасовых промежутков. А обратил внимание я на это потому, что на хостинге, которым я пользуюсь, статистика посещений обновляется каждые четыре часа — в 0, 4, 8, 12, 16 и 20 часов. Как ни странно, моменты обновлений статистики совпадают с временем смены вахт.

Все это навело меня на мысль о том, что серверная статистика (например, awstats) устроена не совсем верно с точки зрения информативности. Например, мне не особо интересно узнавать шесть раз в день, как росла посещаемость за последние три месяца — это совершенно второстепенно, а вот узнать о событиях, произошедших «во время вахты» — совсем другое дело. Мне совершенно не хочется просматривать список рефереров, по которым переходили на мой сайт в течение месяца — достаточно показывать ссылки, по которым переходили в последнее время, и выделять среди них новые. Возвращаясь к морской теме, не надо пересказывать весь судовой журнал — достаточно лишь рапорта о произошедшем во время последней вахты, то есть — с момента предыдущего просмотра статистики.

Забавное наблюдение

Думаю, будет полезно standalone-блоггерам, решившим привлечь посетителей на сайт. Подчеркну, именно нормальных посетителей, способных влиться в ядро аудитории сайта, а не необходимый для рекламодателей «трафик». Главное — посетители, а рейтинги в поисковиках и трафик сами приложатся.

Предлагаю сравнить два графика посещаемости, точнее, скорость их нарастания и падения.

На фиолетовом графике показан прирост посещаемости сайта после того, как на него дал ссылку [info]lord_k. Замечу, что повышенная посещаемость держалась буквально пару дней, затем все вернулось к обычному уровню. Второй «всплеск» — ссылка из сообщества [info]oldrawing.

На желтом — скачок после того, как DI HALT дал на мой сайт ссылку на своем проекте Easyelectronics.ru. Видно, что спад посещаемости до «нормального» уровня занимает почти неделю, да и сам «нормальный уровень» вырос по сравнению с начальным гораздо более значительно.

Как это объяснить? Ссылка из «высокорейтингового» ЖЖ (405 место в рейтинге Яндекса) по «отдаче» оказалась гораздо слабее, чем ссылка с менее раскрученного standalone-блога (4452 место). Дело в том, что аудитория ЖЖ и standalone-блогов сильно отличается. Для ЖЖ-пользователя мир заканчивается за пределами френдленты. Когда интересная ссылка «уплывает» из быстро меняющейся френдленты, пользователь уже не пойдет искать ее в архиве, а то и вообще не узнает о ее существовании. Для посетителей стендалончиков, напротив, пост со ссылкой висит на главной странице хорошо знакомого сайта одну-две недели, а то и больше, что позволяет находить ссылку и спустя некоторое время после публикации.

Еще один баг

Вчера не без помощи комментариев камрада [info]akinak2000 к записи про некоторых пидоров в плохом смысле обнаружил один баг, похожий на уже описанный ранее.

Теперь, правда, он выглядит по-другому. Если кто-то оставляет комментарий, пользуясь OpenID, то ему не отправляются никакие cookie. Соответственно, при последующем запросе страницы он опознается, как не оставлявший комментариев — и ему выдается кешированная ранее версия страницы, на которой комментарий не виден.

Сейчас немного разберусь с неотложными делами — и примусь за приспособление OpenID-плагина к своим представлениям о том, как он должен работать. Баг пофикшу.

Связка WordPress+Apache+nginx

Поборол довольно интересный глюк, возникающий при работе «связки» из WordPress, Apache и nginx.

Для начала расскажу, как в WordPress устроен «планировщик». Естественно, многие хостеры всячески ограничивают доступ пользователя к системе. Поэтому выполняемые на хостинговых аккакунтах скрипты не могут полагаться на такие вещи, как cron — стандартный юниксовый планировщик задач. Кстати, некоторые извращенцы запускают WordPress под Windows, где никакого крона нет и никогда не было.

Разработчики скриптов извращаются, как могут. Например, в WordPress все устроено следующим образом: при обращении к страницам сайта вызывается функция spawn_cron(), которая, если имеются «запланированные» события, в свою очередь обращается GET-запросом к файлу wp-cron.php, используя fsockopen(). ИМХО, механизм более чем странный, но почему-то использующийся.

Мое внимание привлекло большое количество ошибок 499, которые awstats определял, как Unknown Error, в статистике сайта. Оказалось, что они возникают из-за наличия у хостера nginx, который не перенаправляет запрос Apache, если соединение было закрыто слишком быстро — раньше, чем сервер успел прочесть заголовки. При этом в лог пишется 499 ошибка.

Естественно, wp-cron.php не запускается, что несколько бесит. Например, не работает автоматическое создание бекапа базы данных по расписанию.

Как лечить досадное недоразумение? Необходимо всего лишь исправить файл wordpress-dir/wp-includes/cron.php — перед выходом из функции spawn_cron() добавить небольшую задержку.

Было:

function spawn_cron() {

//skipped some code

if ( $argyle )
fputs( $argyle,
"GET {$parts['path']}?check=" . wp_hash('187425') . " HTTP/1.0\r\n"
. "Host: {$_SERVER['HTTP_HOST']}\r\n\r\n"
);

}

Стало:

function spawn_cron() {

//skipped some code

if ( $argyle )
fputs( $argyle,
"GET {$parts['path']}?check=" . wp_hash('187425') . " HTTP/1.0\r\n"
. "Host: {$_SERVER['HTTP_HOST']}\r\n\r\n"
);

usleep(100000); //100ms wait for nginx
}

После такого патча wp-cron работает нормально.

Русский йазыг и дизайн

Наткнулся на сайтик http://www.colocat.ru. Приятный дизайн, удобная навигация, интересные коммерческие предложения — все в наличии. Но…

При всей красивости дизайна начинаешь замечать мелкие орфографические ошибки и несуразности, например, «хостинг-провайдер» соседствует с «хостинг провайдером» без дефиса, «способ удобен скоростью приема платежей а так же простотой выпоняемых операций» — вечная беда тех, кто пользуется вордовским спеллчекером, он не отлавливает «также» и «так же», «сервера выделенные под услуги UNIX хостинга» не отделены от причастного оборота (блин, вспомнил, как оно называется) запятой.

С другой стороны, на разнообразных сайтах паял-жукоделов или спутниковых «пиратов» нередко встречаются такие кошмары Розенталя, как:

20 ноября, по просьбам пользователей, был запущен новый сервер, призванный сократиь ответы для категории клиентов, трасса которых до старого сервера слишком длинна и нестабильна. Предупреждаем, сервер находится в тестовом режиме и через некоторое время может быть отключен! Тем у кого есть проблемы со старым сервером, совтеуем попробывать перейти на новый. Тем кто никаких проблем не испытывает, советуем оставаться на старом.
Чтобы перейти на новый сервер, нужно изменить в настройках ваших примеников 2 буквы в имени хост-а, который указан в разделе «моя подписка». ru ПОМЕНЯТЬ на cc. Просьба ко всем, обязательно оставить сравнительный отзыв о работе нового сервера, потому что от этого зависит его дальнейшая судьба.

Орфографические ошибки можете посчитать сами. Я нашел 9 штук, но может быть и больше.

При всем этом не возникает чувства «несоответствия» между дизайном сайта и орфографией его авторов. Весь «дизайн» на подобных сайтах сводится либо к табличной верстке пятилетней давности, либо к найденному где-то «трехколоночному» дизайну для «крутейшего портала на PHP-Nuke». Напротив, когда дизайн заменяется на нечто «модное вебдванольное», каким-то «шестым чувством» начинаешь обращать внимание на малейшие несуразности на сайте.

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

Хочется странного

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

По мере роста посещаемости сайта уже не так удобно скачивать лог с сервера и смотреть его «текстовым редактором F4». Распространенный софт наподобие awstats считает только «усредненные» значения. Это, конечно, тоже интересно, но для скрытых вуайеристов совсем не подходит.

В общем, хочется софтину, которая могла бы:

  • Показывать «стандартную» веб-статистику — количество посещений, хиты, рефереры, поисковые запросы — в общем, подобие awstats
  • Детализированно показывать визиты пользователей — то есть фактически отображать данные из лога
  • Иметь возможность показать визиты пользователей с выбранным реферером или поисковым запросом
  • … и прочие подобные радости

В принципе, есть даже идеи, как такое реализовать. Естественно, софтина должна быть «оффлайновой» — для детализированного просмотра информации по визитам на сайт надо фактически создавать копию лога — а это очень немаленький объем данных. Чтобы не изобретать велосипед — осведомлюсь у публики — кто что знает «по теме»?

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

Хорошие новости

Временно вырубил антилич.

Одновременно договариваюсь с хостером на предмет добавления rewrite в конфигурацию nginx, а не Apache — так будет работать быстрее и с меньшей нагрузкой на сервер.

Скрипт антилича запущен на сайте и доступен для скачивания

Все в подробностях читаем тут:

http://shura.luberetsky.ru/plaginy-dlya-wordpress/antileech/

В ваших френдлентах должна быть видна косая надпись через всю картинку.