Не все знают, что модуль Views предоставляет довольно мощный API. В добавок к обширной системе хуков, функционал views можно расширять за счет дополнительных плагинов. Их, плагинов для views, существует 10 типов. В данной статье будет рассмотрено создание плагина типа Display extender, который позволяет добавлять собственные настройки для дисплеев. При разработке сайтов такую настройку потом можно применить в любом месте, где вызывается дисплей.
Для реализации плагина создаем модуль и объявляем в нем hook_views_api():
php /** * Implements hook_views_api(). */ function extender_example_views_api() { return array( 'api' => 3, ); }
Далее, согласно мануалу, нам нужно вызвать hook_views_plugins() в файле extender_example.views.inc:
php /** * Implements hook_views_plugins(). */ function extender_example_views_plugins() { $path = drupal_get_path('module', 'extender_example'); $plugins = array(); $plugins['display_extender']['extender_example'] = array( 'title' => t('Extender example textarea'), 'help' => t('Add textarea.'), 'path' => $path, 'handler' => 'extender_example_plugin_display_extender_code', ); return $plugins; }