Давненько я не делал ничего интересного на Друпале. И вот попалось. Необходимо было сделать интернет магазин, где можно просматривать и искать товары, выбрав нужный тип цен (в частности оптовые или розничные).
Выручил меня в этом плане модуль uc_price_per_role, где уже есть даже блок для выбора типа цен (в том числе и для анонимных пользователей). И views хорошо выводит цены в зависимости от выбора пользователя. А вот с поиском пришлось повозиться.
Как видно из заголовка статьи, поиск делал на основе views exposed filter, поэтому написал обработчики для views. Новый модуль не стал делать, просто немного подкорректировал uc_price_per_role, тем более что в самом модуле не везде были проставлены функции t(), поэтому так и так его пришлось подправлять. Итак, что меняем:
В файле uc_price_per_role.info дописываем:
files[] = views_handlers/uc_price_per_role.views.inc
В модуль uc_price_per_role.module дописываем:
/** * Implementation of hook_views_api(). */ function uc_price_per_role_views_api() { return array( 'api' => 2, 'path' => drupal_get_path('module', 'uc_price_per_role') . '/views_handlers', ); }
Ну и копируем в папку views_handlers(внутри папки с модулем) файлы, которые я прикрепляю. Фильтр делал для условия Is between, т.е. когда цена задается от мин. до макс. На других условиях не проверял.
Не пора ли про семерку писать?
Я изначально был настроен на то, что 7-ку пропущу. А щас вроде как 8-ка должна в этом году выйти, дак есть ли мне смысл что-либо делать на 7-ке? Если drupal и дальше будет скакать такими темпами с версии на версию, то я скорее всего так же будут через версию перескакивать. Как то не очень хочется тратить свое время на то, что через 2 года уже будет не актуально. Не успеет мое самообразование окупится :)
Отправить комментарий