Программирование

Разработка модулей, сниппеты и др. вопросы программирования под Drupal, а также создание собственных шаблонов. Присылайте свои разработки. Вопросы по установке и настройке готовых модулей задавайте в Установка и настройка.
Все по темам: примеры кода, патчи и утилиты, темы оформления.

icon:

Заморочки с русским и UTF8

Аватар пользователя мишка

Есть проблема.

Мне (для модуля который делает алфавитную сортировку) надо пробежаться по массиву от 'А' до 'Я', именно по русскому. range() на русском конечно не работает. Пришлось делать arr=array('А', 'Б'...); прямо в коде. Но в броузере я вижу что надо только если я сохраняю код модуля в UTF8.

Но !! Время от времени друпал ругается следующим сообщением:
"Cannot modify header information - headers already sent by (output started at /home/aquarist/public_html/drupal/modules/encyclopaedia/encyclopaedia.module:1) в /home/aquarist/public_html/drupal/includes/bootstrap.inc на строке 701."

В первой строке моего модуля никаких хедеров не посылается, там есть <?php и начинается шапка комментариев. Нутром чувствую что проблема из-за того что сохранил код в UTF8.

Кто нибудь уже наступал на эти грабли ? Друпал 4.6.2.

0 Спасибо

Карта сайта. Как?

Аватар пользователя Easter

Привет всем. :)
Вот я обнаружил на www.drupal.org модуль site map. Вопрос как я могу при помощи него создать нормальное отображение карты сайта? Я понял, что при момощи таксономии. Но как нужно ее набить? Сколько словарей какая в них будет структура?

0 Спасибо

Проверка прикреплен ли файл

Аватар пользователя pfoot

Как проверить прикреплен ли файл в добавляемом ноде?

0 Спасибо

bands.module

Аватар пользователя SG

На сайте http://musica.mustdie.ru в разделе "группы" содержится огромный список исполнителей. как я понял всё это реализуется с помощью некоего модуля (или что там у них), который создает категории по ключевым словам. Последовательность действий автора (т.е. человека, который наполняет сайт) и ,собственно, движка сайта такова:

    1. Допустим, нам надо добавить описание альбома группы Kreator. При этом заполняем поле "band" словом Kreator.
    2. Заполняем все остальные поля и жмем "Submit".

0 Спасибо

phptemplate: как сделать в отображении node список сопоставленных тематик не

Аватар пользователя PG

В теме box_grey в шаблоне node.tpl.php список тематик, к которым отнесен данный документ выдается в одну строчку через запятую. Хранится этот список в переменной $terms, а вывод ее содержимого выглядит, соответственно, так:

( categories: <?php print $terms ?> )

Bang показала мне способ, как эти ссылки можно выводить не в строчку, а в столбик, с обрамлением. Примерно как это сделано вот здесь:
http://test.isi.org.ru/cp/news/topic/68

Нужно вышеозначенный фрагмент кода шаблона заменить нижеследующим:


<?php
$t=array();
$o_terms=taxonomy_node_get_terms($node->nid);
foreach($o_terms as $tid=>$term) {
$t[]="Другие новости по теме «".$term->name."» →
";
}
print implode(" ", $t);
?>

Куда именно его вставить в шаблоне - дело вкуса и дизайна. Главное, что эта конструкция позволяет вставлять свои фразы внутрь ссылок на тематики и между этими ссылками.

0 Спасибо

Запомнить юзера.

Аватар пользователя Гость

Вопрос.
Мне понадобилось чтобы в блоки логина был чекбокс - запомнить меня.
Как осуществить настройку чтобы это сработало??? А то я как-то этого еще не встречал...

Да и вообще у меня щас друпал настроен так что он не запоминает юзера. Т.е. залогинился поюзал, закрыл окно. Захожу опять... и оптяь нужно логиниться...
Хелп плиз )

0 Спасибо

Нужно ли создавать новый тип нода?

Аватар пользователя Krot

Пишу модуль для отображения в блоке актуальной информации (курсы валют) которая будет вноситься в базу пользователями.
Насколько я понял, вся "философия" Друпал заключена в том что _вся_ информация на сайте содержится в нодах.
Собственно вопрос, нужно ли для работы с такой информацией делать отдельный тип нода или можно обойтись без него?

0 Спасибо

Weblink4.5 для Drupal4.6

Аватар пользователя Nick

Несколько раз слышал разговоры, что weblink4.6 переписан заново и поэтому теперь он бяка. В частности из-за того, что в нем нет каталога ссылок.

Вот и сам наткнулся на эти же грабли. И мне это тоже не понравилось.

Поэтому я просто портировал старый weblink4.5 на Drupal4.6. Правки оказались минимальные :)
(см. атач.)

ИНСТАЛЯЦИЯ
1. Как обычно. Положите weblinks.module в каталог modules/
2. Выполните weblink.mysql или weblink.pssql.
Подробнее смотрите INSTALL.

ОБНОВЛЕНИЕ
1. Если у вас уже раньше был установлен weblink4.5 (на Drupal4.5), то БД обновлять НЕ надо. Просто замените weblink.module на новый.

0 Спасибо

Визуальный редактор в режиме создания / редактирования сообщения

Аватар пользователя .scu

Существует ли как-то виз. редактор для создания нового материала? Если да, как его включить?
Писать все кодом не очень удобно (((

0 Спасибо

Drupal и Oracle8 (OCI8)

Аватар пользователя palych063

Дружит ли Drupal с Oracle8(OCI8)? Может есть какой нибудь супер-модуль или еще что то в этом роде :-)

0 Спасибо

Формирование содержимого блока

Аватар пользователя ins

Здравствуйте, уважаемые !
В процессе изучения написания модулей для друпала по хэндбуку на drupal.org, мне захотелось, в образовательных целях, немного модифицировать модуль-tutorial. Идея такая: в блоке сначала выводится форма с 2 текстовыми полями, где вводятся начальный и конечный день,кнопой submit и скрытым элементом с именем 'stage'; после этого в этом же блоке должны выводиться ссылки на материалы, созданные в период между начальным и конечным днем. Проверка на условие происходит так

0 Спасибо

Что такое $may_cache?

Аватар пользователя Гость

Скажите, что обозначает в hook_menu параметр $may_cache?

0 Спасибо

settings в hook_nodeapi - не отображатся название настройки

Аватар пользователя Гость

Взял для проверки пример модуля с drupaldocs.org

     case 'settings':
      $settings = array();
      $settings[t('rateable')] = form_checkbox('', 'nodeapi_example_'. $node->type, 1, variable_get('nodeapi_example_'. $node->type, TRUE));
      return $settings;

Потом открывают настройку типов контента и ожидаю увидеть галочку с подписью "rateable". Но отображается только галочка, без всяких подписей. Ладно, если была она одна, но у меня их будет несколько. Где тут что неправильно в примере?
Догадываюсь, что название нужно вписа

0 Спасибо

Как работает локализация в друпал?

Аватар пользователя Ubnormal

Здравствуйте!

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

0 Спасибо

Обработка URL моим модулем

Аватар пользователя Гость

Как сделать, чтобы url вида node/$node->nid/имя моего мудуля обрабатывался моим модулем?

0 Спасибо

формирование контента в новом модуле

Аватар пользователя Гость

Доброе. Есть задача - надо в новом модуле вытаскивать данные из некоторой базы и показывать их на экран. Сейчас я сделал так - в newmodule_view запускаю запрос и офрмляя, запихиваю его в $node->body. Кто-нибудь может сказать - правильно ли это? Если нет, то как на самом деле нужно (роясь в сорсах что-то не догнал).

0 Спасибо

Пароль генерируется и затем высылается на почту - нехорошо

Аватар пользователя Гость

Собственно, сабж.

Мне бы хотелось сделать так, как это сделано у большинства CMS (не сочтите за "хочу быть модным" ;)) - т.е. при регистрации пароль вводит регистрирующийся, а затем происходит подтверждение регистрации по почте (см. IPB / vB и пр.).

Можно ли это как-нибудь сделать, не лазяя "особо глубоко"?

0 Спасибо

Галерея внутри раздела

Аватар пользователя edhel

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

Не очень красиво я сделал это с помощью flexinode: у моей статьи есть поле "URL источника статьи" и галочка "переадресовывать автоматически на источник статьи". Когда надо в раздел добавить галарею я делаю статью с названием "Галерея такая-то", адресом типа image/tid/xxx и галочкой. При клике по этой статье юзер попадает в галерею. Но навигация-то теряется!!! breadcrumb становится типа "Галереи /". Как быть? По идее было бы как раз то что надо, если бы галереи были бы отдельным типом нодов, также как и сами картинки, но они ведь сделаны категориями!

0 Спасибо

Создание собственного типа контента

Аватар пользователя Гость

Если ли у кого пример модуля, который добавляет свой новый тип контента. Чтобы впоследствии дополнительные поля этого модуля нормально индексировались и искались поиском.

0 Спасибо

изменение вывода дерева меню. как грамотнее сделать ?

Аватар пользователя Оранжевый Удав

Добрый день!

Мне надо подправить функции theme_menu_tree и theme_menu_item из includes\menu.inc . Как более грамотно сделать - править прямо в menu.inc или эти функции есть хуки и их можно как-нибудь подменить из модуля/темы ? Не хотелось бы трогать базовое ядро, не эстетично это как-то..

Спасибо.

0 Спасибо