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

Прислано: VladSavitsky

пн, 14/12/2009 - 22:11

Опубликовал на drupal.org модуль, который показывает список блоггеров с их аватарами, реальными именами (если модуль RealName включен) и Х заголовков последних постов в блоге.

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

Страница выводится по адресу: example.com/blogs

В настройках модуля можно указать:

  • сколько заголовков последних постов из блога выводить
  • сколько блоггеров на одной странице нужно показывать (используется пейджер)
  • сколько постов в блоге должно быть у блоггера, чтобы он попал в этот список.

В релиз включен полный перевод модуля на русский язык.

Скриншот страницы, которую выводит модуль:
Пример работы модуля Bloggers

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

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

Я думаю, что если округлить, то можно считать, что на создание такого простого модуля ушёл 1 день (8 часов).
В будущем на публикацию на drupal.org я думаю уйдёт меньше времени, потому что я записал все свои движения по этому поводу...

Мотивация
Модуль был написан на скорость и бесплатно. Мне понравилось!..
Есть в этом что-то заманчивое. И адреналин работы с секундомером и доброе дело для пользы другого.

В общем я задумался над тем, чтобы (пока) раз в месяц выделать 1 день для создания модуля, который сообщество друпал.ру сочтет общественно полезным.

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

А пока я буду готовиться. Спасибо.

PS.
Забыл дать ссылку на страницу проекта:  http://drupal.org/project/bloggers
Модуль называется Bloggers (спасибо  neochief за идею названия)

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано volocuga в пн, 14/12/2009 - 22:27.

Украинский,Влад


Опубликовано Master of Tragedy в пн, 14/12/2009 - 22:30.

Юра, так давай вместе на украинский переведем. ;) А ще, Влад, ты забыл написать как называется модуль и ссылку дать :)


Опубликовано VladSavitsky в пн, 14/12/2009 - 22:31.

Ух, я ещё не успел закончить свой опус сочинять, а вы уже успели комменты добавить!!!
Ок. Совесть меня уже мучает - зовсім забув рідну мову!
То що будемо робити? Мені зробити переклад?


Опубликовано Master of Tragedy в пн, 14/12/2009 - 22:35.

Зробимо разом ;)


Опубликовано Master of Tragedy в пн, 14/12/2009 - 22:40.

А почему, кстати, вьюс не подошел? :)


Опубликовано volocuga в пн, 14/12/2009 - 22:52.

"Master of Tragedy" написал(а):

Юра, так давай вместе на украинский переведем

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

Как neochifer обои сделал "From Ukraine with love".


Опубликовано VladSavitsky в пн, 14/12/2009 - 22:52.

Вьюс он большой! Иногда нужно что-то маленькое и из-за этого ставить Вьюс не хочется.
А вообще, я не фанат этого модуля, хотя он реально мощный. Стараюсь использовать его в случае крайней необходимости. По сути модуль Views - это визуальный конструктор SQL-запросов.


Опубликовано VladSavitsky в пн, 14/12/2009 - 22:59.

По поводу того, что автор украинский, а модуль русский...
Вижу несколько вариантов решения проблемы:
1. Стать русским автором (сложный вариант)
2. Сделать модуль украинским или русско-украинским (самый простой вариант).


Опубликовано volocuga в пн, 14/12/2009 - 23:59.

русско-украинский - уже неплохой компромис
Небольшой штришок: украинско-русский :)


Опубликовано Arturus в вт, 15/12/2009 - 04:10.

Спасибо, поставил, понравилось.
А листание можно сделать?
И еще хотелось бы статистику (всего блогов автора, дата регистрации) и возможность выбрать, какие роли показывать.

(понеслось:-)


Опубликовано RoSk0 в вт, 15/12/2009 - 06:21.

Влад, ссылку на проект поправь...


Опубликовано sadmin в вт, 15/12/2009 - 07:20.

Влад, хороший модуль) Ссылка на рабочий пример ведет на страницу с "техническое обслуживание", это ведь временно?


Опубликовано VladSavitsky в вт, 15/12/2009 - 11:13.

Ссылку на проект поправил. Спасибо

Ссылка на демо - это, собственно, сайт, для которого модуль делался, но этот сайт не я делал. Я только сделал модуль в помощь разработчику, который этим сайтом занимался. Как скоро сайт включат - не от меня зависит. Надеюсь, что скоро заработает...

По поводу доп. фишек - пишите лучше на орге в issue с подробным описанием что именно нужно - а там посмотрим. Если это просто и быстро - сделаю просто и быстро. :-)


Опубликовано VladSavitsky в вт, 15/12/2009 - 11:14.

"Arturus" написал(а):

А листание можно сделать?

А разве пейджер не работает? Может быть вы в админке поставили 0 блоггеров на странице - тогда пейджер не показывается, а все выводится на 1й странице.


Опубликовано Arturus в вт, 15/12/2009 - 11:56.

На странице admin/settings/bloggers
Блоггеров на странице: 10

Листания нет (блогов больше 20:-)


Опубликовано RISK в ср, 16/12/2009 - 20:08.

###


Опубликовано Ujin в вт, 15/12/2009 - 12:40.

Arturus написал(а):

На странице admin/settings/bloggers
Блоггеров на странице: 10

Листания нет (блогов больше 20:-)

Я недавно делал модуль на подобии, и так же проблема с листанием, у меня все связано с тем что в запросе есть GROUP BY и count, я посмотрел этот модуль там тоже есть GROUP BY. здесь можно посмотреть об этом баге, и не знаю как решить, может быть у кого-то будут идеи?


Опубликовано sadmin в вт, 15/12/2009 - 12:53.

Только что начал тестить и та же картина. При настройках 10,10,10 отображается только титл страницы. Кроме того идет путаница в пейджере - появляется дополнительный элемент (у меня с номером 5), который ведет на /blogs
Влад, я 20 минут пробовал добавить issue на орге, но ничего не вышло - бросил. Как дорасту, буду писать туда


Опубликовано Master of Tragedy в вт, 15/12/2009 - 14:05.

"RISK" написал(а):

кто не в курсе: Master of Tragedy автор польского сайта занимающийся переводами на украинский

Вообще-то на польский ;)


Опубликовано VladSavitsky в вт, 15/12/2009 - 14:09.

"RISK" написал(а):

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

Я сначала подумал, что Компьютерра тоже на друпале - ан нет - битрикс.
Можно и последний пост выводить и сделать это дело опцией в настройках. Все ведь зависит от того, что нужно получить на данном конкретном сайте.

"Ujin" написал(а):

Я недавно делал модуль на подобии, и так же проблема с листанием, у меня все связано с тем что в запросе есть GROUP BY и count, я посмотрел этот модуль там тоже есть GROUP BY. здесь можно посмотреть об этом баге, и не знаю как решить, может быть у кого-то будут идеи?

Проблема явно в запросе. Я знаю, что LIMIT точно нарушит работу пейджера...
Ок. Я понял. Буду разбираться.


Опубликовано Dan в вт, 15/12/2009 - 14:54.

"VladSavitsky" написал(а):

Проблема явно в запросе. Я знаю, что LIMIT точно нарушит работу пейджера...

А зачем в запросе LIMIT, если есть пэйджер?
А LIMIT используется явно или через обёртку db_query_range?

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


Опубликовано VladSavitsky в вт, 15/12/2009 - 17:40.

Добавить картинку на орг у меня не получается - пробовал раз десять уже. И формат менял и размер - никак.


Опубликовано orangeudav в вт, 15/12/2009 - 21:26.

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


Опубликовано VladSavitsky в вт, 15/12/2009 - 21:53.

Починил пейджер - сейчас попробую сделать релиз.
Вот описание проблемы и решение: http://api.drupal.ru/api/function/pager_query/6#comment-1
Заработала, кажется, ссылка на сайт с живым примером.


Опубликовано VladSavitsky в вт, 15/12/2009 - 21:55.

"orangeudav" написал(а):

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

Примерно столько и ушло, но сам по себе модуль требует ещё и кучу сопровождающего кода.
Кроме того время на проверку работоспособности и "вычитывание" кода.
А вообще-то, если все так просто - почему не сделали?!...


Опубликовано VladSavitsky в вт, 15/12/2009 - 22:22.

Новый релиз (6.x-1.1) готов.
Детали указаны тут: http://drupal.org/node/660744
Починил пейджер и некоторые CSS улучшения.


Опубликовано Dan в вт, 15/12/2009 - 23:43.

Опасно так работать с запросами.

"VladSavitsky" написал(а):

GROUP BY n.uid HAVING COUNT(*) >= ". $post_limit;

Используй подстановку: GROUP BY n.uid HAVING COUNT(*) >= %d";


Опубликовано Arturus в ср, 16/12/2009 - 02:13.

"VladSavitsky" написал(а):

В общем я задумался над тем, чтобы (пока) раз в месяц выделать 1 день для создания модуля, который сообщество друпал.ру сочтет общественно полезным.

Недавно столкнулся с отсутствием модуля который выдает список пользователей со статистикой размещенных материалов по типам (блогов-10, галерей-5, комментов-20 ...). Делал сниппетом. Думаю, что многие, в том числе и я будут Вам благодарны за создание такого модуля. Тем более, что он очень похож на данный модуль.


Опубликовано Jara в ср, 16/12/2009 - 02:17.

RISK написал(а):

Вспомнил из-за того, что Вассерман свой видеоблог ведёт и по материалам его постов предлагаю называть модуль турецким:
_http://www.computerra.ru/blogs/wasserman/376560/
о том, почему турецким, после 7 минуты. И ещё один ролик о языках от Вассермана:
_http://www.computerra.ru/blogs/wasserman/376084/
bla-bla-bla

Сколько времени правила сайта будут НЕ одинаковы для всех? Почему вы можете нарушать своё законодательство, а я – нет?

Если на русском сайте я скажу ПРАВДУ, которая не будет соответствовать ГОСТу, то её могут удалить, и назовут меня буржуазным националистом.

А ваш шовинизм везде, кругом: в книгах, на ТВ, в Интернете. Когда уже появится своя голова? Когда люди начнут мыслить здраво? Этот ресурс я считал лишённым политической грязи, шовинизма и информационных войн. Но видимо это не так.

RISK написал(а):

...украинскую мову придумали поляки...

Не то, чтобы я в профессионализме Вассермана сомневался

А надо сомневаться. Вы всё хаваете, как вам преподнесут с экрана. Надо своей головой думать, включите фильтры. Если человек ботанического вида с пейсами распинается, что Украину придумали из пустоты, то вы уже верите ему, только потому, что у него вид такой. А может стоит задуматься зачем он тратит свои силы, и как монетизирует блоги :)

Утверждение «украинский язык – диалект!» здравомыслящий человек посчитает смешным и идиотским. Я уже не говорю о профессионалах. Я кинул ссылку на этот идиотизм профессору-лингвисту, от подтасовок фактов он был в шоке.

Что трудно понять, что за $ это профессура на заказ правительства Мадагаскара «докажет», что люди пошли от лемуров, напрямую, минуя высших приматов?

2 VladSavitsky
Вибачте, що не по темі Вашого посту.


Опубликовано Valeratal в ср, 16/12/2009 - 06:40.

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


Опубликовано sadmin в ср, 16/12/2009 - 08:38.

"Valeratal" написал(а):

А не русские/украинские/польские/вассерманские

не придирайтесь) по-моему очень хорошая идея.


Опубликовано sadmin в ср, 16/12/2009 - 08:47.

"VladSavitsky" написал(а):

Новый релиз (6.x-1.1) готов.
Детали указаны тут: http://drupal.org/node/660744
Починил пейджер и некоторые CSS улучшения.

Влад, с пейджером все отлично! Работает, прежний баг с появлением доп. элемента пейджера исчез. При количестве заголовков у блоггера менее 10 выводится только титл страницы /blogs


Опубликовано RoSk0 в ср, 16/12/2009 - 09:19.

"Valeratal" написал(а):

Модули бывают либо хорошие, либо другие.
А не русские/украинские/польские/вассерманские

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


Опубликовано RISK в ср, 16/12/2009 - 12:54.

###


Опубликовано Valeratal в ср, 16/12/2009 - 10:02.

во-во, я как раз хотел про хохлосрач напомнить


Опубликовано VladSavitsky в ср, 16/12/2009 - 11:57.

"Valeratal" написал(а):

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

Прошу прощения, но, когда я написал что модуль "русский", то имел ввиду только то, что в наборе уже есть русский перевод и то, что он сделан представителем русского сообщества. И именно это я хотел подчеркнуть, что я не просто написал обзор "англоязычного"(западного) модуля, а что это вклад сообщества друпал.ру в общее развитие друпал. Вот и всё!

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


Опубликовано VladSavitsky в ср, 16/12/2009 - 11:58.

"sadmin" написал(а):

При количестве заголовков у блоггера менее 10 выводится только титл страницы /blogs

Возможно у него их действительно меньше 10? Проверьте, пожалуйста.


Опубликовано sadmin в ср, 16/12/2009 - 12:41.

У каждого блогера более 20 заметок и они выводятся при 10, 11 и т.д.
Как только выбираю в настройках 9 или меньше выводится только титл страницы


Опубликовано RISK в ср, 16/12/2009 - 20:08.

###


Опубликовано gothica@drupal.org в ср, 16/12/2009 - 13:13.

никто не знает как вывести комментарии в таком виде как здесь
http://propsiholog.ru/comments/recent
?


Опубликовано Dan в ср, 16/12/2009 - 18:51.

"gothica@drupal.org" написал(а):

никто не знает как вывести комментарии в таком виде как здесь http://propsiholog.ru/comments/recent?

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


Опубликовано gothica@drupal.org в ср, 16/12/2009 - 22:19.

интересный модуль


Опубликовано VladSavitsky в ср, 16/12/2009 - 22:10.

Есть хорошие новости:
Исправил глюк, который нашёл sadmin (http://drupal.org/node/661624).
Сделал все SQL-запросы безопасными (устойчивыми к SQL-инъекциям).
Подчистил код модуля.

Все это включено в новый релиз 6.x-1.2: http://drupal.org/project/bloggers

PS. Такой простой модуль и столько возни с ним...


Опубликовано Dan в ср, 16/12/2009 - 23:02.

"VladSavitsky" написал(а):

PS. Такой простой модуль и столько возни с ним...

Именно. Время засекал не там :)
Именно поэтому многие не выкладывают модули на д.орг...


Опубликовано Arturus в чт, 17/12/2009 - 07:35.

У меня ошибки вывалились после обновления

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\n FROM {node} n\n WHERE n.type = \'blog\'\n ' at line 3 query: SELECT COUNT(*) FROM club_users u INNER JOIN (SELECT n.uid, COUNT(*) AS count\n FROM {node} n\n WHERE n.type = \'blog\'\n AND n.status = 1\n AND n.uid <> 0\n GROUP BY n.uid) c ON c.uid = u.uid WHERE c.count >= 1 in /home/webmaster/www/club.shintoptrophy.ru/sites/all/modules/bloggers/bloggers.module on line 100.

А в первой версии было все в порядке


Опубликовано Arturus в чт, 17/12/2009 - 07:37.

А сортировка блогеров идет по какому признаку?


Опубликовано sadmin в чт, 17/12/2009 - 08:00.

"Arturus" написал(а):

А сортировка блогеров идет по какому признаку?

по uid, см. код модуля


Опубликовано VladSavitsky в чт, 17/12/2009 - 12:07.

"Arturus" написал(а):

У меня ошибки вывалились после обновления

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\n FROM {node} n\n WHERE n.type = \'blog\'\n ' at line 3 query: SELECT COUNT(*) FROM club_users u INNER JOIN (SELECT n.uid, COUNT(*) AS count\n FROM {node} n\n WHERE n.type = \'blog\'\n AND n.status = 1\n AND n.uid <> 0\n GROUP BY n.uid) c ON c.uid = u.uid WHERE c.count >= 1 in /home/webmaster/www/club.shintoptrophy.ru/sites/all/modules/bloggers/bloggers.module on line 100.

А в первой версии было все в порядке

Очень странная ошибка. Я проверял локально и на сервере и она не подтвердилась.
Тем не менее явно у вас не происходит преобразование имени таблицы из {node} в club_node. Я это исправил и сделал новый релиз 6.x-1.3 - проверьте, пожалуйста.

Интересно почему такая ошибка возникла. Какая версия друпал у вас стоит? Может быть вы патчили ядро?


Опубликовано VladSavitsky в чт, 17/12/2009 - 13:25.

По просьбам трудящихся сделал ещё один релиз - оказалось достаточно легко можно добавить:

  • Дату регистрации пользователя и
  • Количество постов в его блоге

Все это можно включать/выключать в админке.
Эти изменения вошли в релиз 6.x-1.4: http://drupal.org/node/662208

Частота выхода релизов уменьшилась с 8 часов до 4х... Я думаю, что пока на этом стоит остановиться.
Спасибо.

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


Опубликовано Arturus в пт, 18/12/2009 - 03:26.

"VladSavitsky" написал(а):

Интересно почему такая ошибка возникла. Какая версия друпал у вас стоит? Может быть вы патчили ядро?

Версия друпала Drupal 6.14, 2009-09-16
Ядро не патчил, не менял и не обновлял.

А какие предположения? Почему у меня так?

"VladSavitsky" написал(а):

Релиз 6.x-1.4

С сортировкой согласен.
Новая версия работает почти хорошо, ошибок не вываливает:-)
Обнаружил, что при переходе по страницам, пользователи с одинаковым количеством материалов перескакивают с первой страницы на вторую и т.д.
http://club.shintoptrophy.ru/blogs
пользователь primkray к примеру

Настройки:
Блоггеров на странице:10
Заголовков для каждого блоггера:5
Минимальное количество постов в блоге: 1


Новое на сайте

Ссылки партнёров

Express-pechati.ru: печати полежаевская, штампы на заказ.