Designcentre.ru
Прислано: arsart
чт, 10/05/2007 - 21:48
Коротко:
Designcentre.ru (Drupal 5.1)
Дизайн фид-агрегатор, держится полностью на модуле leech.
Это парсер рсс-каналов, в отличии от родного агрегатора умеет сохранять feed-item сразу в ноды с последующим выбором срока хранения нод (до года или вообще не удалять). В модуле есть один критичный баг, который девелоперы никак не хотят воспринимать как критичный - модуль не понимает кодировки импортируемых фидов отличные от utf-8. Если у кого есть какие мысли, здесь поднят друпалрувцем toologic баг.
- arsart's blog
- Для комментирования войдите или зарегистрируйтесь
проблема видимо в том, что в пхп парсер XML до 5-й версии не понимал никаких кодировок, кроме utf-8 и ISO-8859-1, потом научился
- Для комментирования войдите или зарегистрируйтесь
так сейчас этот парсер работает нормально?
вопрос к создателю сайта.. как вы установили voting модуль на друпал 5 ?
и где взяли такое оформление с сердечками?
или это другой модуль?
- Для комментирования войдите или зарегистрируйтесь
Люююди!!! У кого-нибудь модуль Leech работает нормально на 5 версии? У меня иероглифы. И никто не знает, как его правильно настроить.
Или хотя бы подсказать в чем может быть проблема. Такой модуль полезный.
- Для комментирования войдите или зарегистрируйтесь
Сердечки нарисовал сам поверх модуля fivestar (+voting API). Сердечки можете забрать себе тоже если хотите. Модуль встал нормально особой возни не было, сначал Voting API потом Fivestar, а после вывел страницу/блок с "рейтингом" через Views.
Leech - пиявка натуральная, не работает он с фидами в win1251 ровно как и с другими кодировками фидов кроме utf-8. Обсуждается здесь: http://drupal.org/node/125755 я был мягко послал со своими приставаниями, но опять же указал на известный парсер SimpliePie где кодировкам уделяется целый кусок кода, а не бнюшка как в личе типа:
// Convert any exotic charset into UTF-8 standard if (function_exists("mb_check_encoding")) { preg_match("/encoding=['\"]([a-z0-9-\/]*)['\"]/", $result->data, $matches); $enc_from = $matches[1]; if (!empty($enc_from) && mb_check_encoding($result->data, $enc_from)) { $result->data = mb_convert_encoding($result->data, "UTF-8", $enc_from); } }
экзотика, а не русский одним словом.
Пока нашел один способ борьбы с win1251 фидами - прогоняю их через FeedsBurner.com и оттуда беру отконвертированный фид. Не всегда прокатывает, особенно валится когда у народа заявлена win1251 в реальности какой-не-помню ISO (камень в Joomla кстати - это был ее движка русский фид) и еще перегнаный в utf.
- Для комментирования войдите или зарегистрируйтесь
А ларчик, как подсказал один ОЧЕНЬ добрый человек - просто открывается. И вроде все ПРЕКРАСНО работает.
Вот вы, arsart, этот код выше ВЕСЬ задокументируйте и всё. :) Работает. У меня во всяком случае.
А вообще, у моего товарища и без всякой возни заработало. На мастерхосте. Не знаю, в чем тут дело.
Вот с картинками бы rss. Вот это дааа.
Спасибо доброму человеку!
- Для комментирования войдите или зарегистрируйтесь
Код задокументировать или закомментировать?
- Для комментирования войдите или зарегистрируйтесь
УРА! Заработала!
А на самом деле они сами исправили и в последней CVS версии убрали часть этого кода. Теперь пашут наши фиды, как я рад!
- Для комментирования войдите или зарегистрируйтесь
это версия dev? или в cvs копаться надо?
- Для комментирования войдите или зарегистрируйтесь
Последня dev ага.
- Для комментирования войдите или зарегистрируйтесь
С enclosure тоже есть решение, но оно к сожалению требует правки кода модуля.
Я делал так. Обрабатывал тег enclosure, сохранял его значение в переменную. А потом добавлял ее к $ body. ( ну ессно оформленную как img)
- Для комментирования войдите или зарегистрируйтесь
а от огромных картинок можно избавиться?
- Для комментирования войдите или зарегистрируйтесь
а теперь для новеньких и начинающих...
что? где? как взять? как ставить?
- Для комментирования войдите или зарегистрируйтесь
http://ftp.osuosl.org/pub/drupal/files/projects/leech-5.x-1.x-dev.tar.gz вчерашний снимок
Screencast on how to install leech: http://youtube.com/watch?v=nRmd6whQFlY
- Для комментирования войдите или зарегистрируйтесь










Комментарии