Статьи о Drupal

Чтобы перевести саму флешку plupload'a, нужно сделать следущее:
Добавить в template.php строчки

function YOURTHEME_preprocess_page(&$vars, $hook) {
  global $theme_path;
  if (arg...

У Друпала есть огромный пласт модулей, специально предназначенный для рассылки, настройки e-mail почты и так далее. В этой статье я постараюсь рассказать подробно о том, как настроить на своем сайте хорошую рассылку e-mail писем, которые можно оформлять с помощью html кода (т.е. вставлять картинки, красиво оформлять и т.д.)

В первую очередь, установим сам модуль Simplenews: http://drupal.org/project/simplenews

Заходим в его настройки, и в разделе "Подписки" admin/settings/simplenews/subscription надо выставить нормальные...

Мне понадобилось изменить аргумент, передаваемый во вьюс, используя пхп, и уменьшить таким образом результат выдачи вьюсины. Конкретный пример: передается аргумент года (например 2010) и нужно выдать все ноды, у которых сск-поле "дата создания журнала" - в 2010 году.
Итак, создаем вьюсину, создаем "Контекстный фильтр" (для Друпал 7) (для 6го друпала это будет аргумент), выбираем его тип "Содержимое: Nid". Далее ставим галку в секции "Если аргумент содаржится в урл, выполнить проверку", выбираем тип проверки php-code, и в нём мы можем выполнить любой пхп-код, использовать в нем...

Оказывается Internet Explorer не может подключать более 31 файла стилей (css). Соответсвенно при достижении этого предела он рандомно другие файлы стилей отключает.
Решение - использовать css-аггрегацию файлов. Можно включить вообще для всех браузеров аггрегаци. (на вкладке настройка сайта - производительность), но лучше пользоваться модулем http://drupal.org/project/ie_css_optimizer , которые аггрегирует файлы только для долбанного ишака.

Источник знаний: статья...

Для того, чтобы установить набор QIP смайликов (kolobok) на Drupal, нужно сделать следущее:

  1. Установить модуль Smileys: http://drupal.org/project/smileys
  2. Включить фильтр смайликов в форматах ввода admin/settings/filters (у каждого формата ввода нажать "изменить" и там внизу поставить галку "Фильтр смайликов")
  3. Скопировать готовый набор смайликов kolobok, который уже адаптирован под Друпал (нашел его...

Когда захотел поставить стандартное красивое облако тегов в виде крутящегося шара, столкнулся с несколькими проблемами, решение их опишу ниже:

Устанавливаем модули
http://drupal.org/project/cumulus
http://drupal.org/project/tagadelic

Скачиваем скрипт для кумулуса отсюда http://pratulkalia.googlepages.com/cumulus.js и кладем его в папку с модулем cumulus (sites/all/modules/cumulus)

Далее меняем файл swf...

Передо мной стала задача добавления видео с ютуба к статьям, но чтобы оно отображалось не в стандартном youtub'овском окошке, а в красивом jw player'e с нужным мне скином оформления

Для этого я сначала установил модули:
http://drupal.org/project/emfield
http://drupal.org/project/media_youtube
(естественно, у меня до этого уже стоял модуль CCK)

Так же мне понадобится jw flv player:
Сам плеер: ...

В одном из своих проектов я использовал модули jcarousel и views_carousel для друпала. Для тех, кто не знает - эти модули позволяют легко организовать красивое слайдшоу фото или любых блоков.

О том, как использовать эту связку модулей, я, возможно, напишу позже (просто читайте readme.txt, там все понятно написано), здесь же я расскажу о том, как создать новую тему оформления для блока с каруселью. Для этого я делал следущее:

Создал новый модуль, назвал его hooksimplements...

Столкнулся с необходимостью в одной вьюсине показать блок другой вьюс, которая бы зависела от родителя. Более конкретно: у меня была вьюс с видом отображения "табы", которая показывала в каждом табе по одной ноде. Нужно было чтобы в этом же табе показывался блок jCarusel с фотками, добавленными именно к этой ноде которая отображается в табе.

Сначала естественно пробовал просто создать вьюс, ей указать поле отображения - эти фотки, но они тогда цеплялись не списком ul, а просто раздельными блоками field-photo , и к этому jCarusel у меня не получалось прикрутить.

Что я сделал...

Есть одно кроссбраузерное решение закругления любых уголков (даже если у нас нет фона, а просто бордер)
http://rmcreative.ru/blog/post/krossbrauzernyy-border-radius

.my-block {
  /* Для хороших браузеров */
  -moz-border-radius: 10px; /* Firefox */
  -webkit-border-...

Для меня всегда была проблема темизировать выпадающие меню из-за их глючности в разных браузерах. Наконец-то разобрался с устройством нормального кроссбраузерного меню Nice menu из аналогичного модуля для друпала.

Ставим модуль отсюда http://drupal.org/project/nice_menus
Заходим admin/settings/nice_menus , ставим кол-во блоков = 1, я еще отключаю скриптование.
Заходим в блоки, ставим появившийся блок nice_menu_1 в нужный регион, сохраняем. Заходим в настройки блока, там выставляем заголовок блока , menu_parent =...

Когда работаешь долго с Друпалом, постоянно сталкиваешься с проблемой мусора в sites/default/files - куча разных файлов непонятного назначения.

На помощь приходит модуль http://drupal.org/project/uploadpath

Устанавливаем, включаем, заходим в admin/settings/uploadpath - богатые возможности настройки путей для загружаемых файлов.

С какими трудностями столкнулся я:

модуль не работал до тех пор, пока я не прописал конкретно для node type паттерн. Т.е. дефайулт паттерн я так понял пока что не работает.

К тому...

Мне нужно было отображать дату недавних сообщений в shoutbox'e более удобным способом для меня - если сообщение добавлено меньше суток назад, то чтобы просто отображалось время ; если в течении прошлой недели - чтобы отображался день, и время, если больше недели назад - то дата и время.

Для этого пришлось хакнуть модуль shoutbox - я не захотел переопределять функцию темизации ибо это тоже сродни хаку - скопировать более 50 строк кода в мою тему чтобы добавить 4 - я считаю это тоже не выход. Итак.

В файл shoutbox.module

...

Css Seo трехколоночный макет с резиновым контентом (оптимизирован под seo - впереди) и прижитым к низу футером

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <...

Страницы