====== Plugins ====== VuFind, and the [[development:architecture:laminas|Laminas components]] that it is built upon, feature integration points for a variety of plugins. The [[development:plugins:general_information|General Plugin Information]] page describes general principles for building plugins. The list below offers specifics for each type of plugin. ===== VuFind-Specific Plugins ===== * [[development:plugins:ajax_handlers|AJAX Handlers]] - AJAX actions accessible through the AjaxController * [[development:plugins:authentication_handlers|Authentication Handlers]] - Custom login functionality * [[development:plugins:autosuggesters|Autosuggesters]] - Sources for autocomplete suggestions * [[development:plugins:captcha_handlers|CAPTCHA Handlers]] - Methods of providing CAPTCHA functionality * [[development:plugins:channel_providers|Channel Providers]] - Sources for [[configuration:channels|Channeled Browse]] suggestions * [[development:plugins:contentblocks|Content Blocks]] - Arbitrary embeddable content (usually used on home pages) * [[development:plugins:content_provider_components|Content Provider Components]] - Loading third-party content (covers, reviews, etc.) * [[development:plugins:coverlayers|Cover Layers]] - Used for dynamically rendering cover images * [[development:plugins:database_gateways|Database Gateways]] - Interfacing with database tables and rows * [[development:plugins:doi_linkers|DOI Linkers]] - Used for looking up links based on DOIs * [[development:plugins:fallback_record_loaders|Fallback Record Loaders]] - Search backend-specific helpers for loading records when normal retrieval fails * [[development:plugins:form_handlers|Form Handlers]] - Used for persisting data from user-submitted feedback forms * [[development:plugins:hierarchy_components|Hierarchy Components]] - Support tools for [[indexing:hierarchies_and_collections|hierarchies and collections]] * [[development:plugins:ils_drivers|ILS Drivers]] - Interfacing with integrated library systems * [[development:plugins:link_resolver_drivers|Link Resolver Drivers]] - Interfacing with OpenURL resolvers for embedded results * [[development:plugins:permission_providers|Permission Providers]] - Permission providers are part of VuFind's [[development:architecture:authorization]] mechanism. * [[development:plugins:recommendation_modules|Recommendation Modules]] - Providing context-sensitive suggestions in search results * [[development:plugins:record_drivers|Record Drivers]] - Representing metadata in an object format recognized by VuFind * [[development:plugins:record_tabs|Record Tabs]] - Objects representing tabs on the record view page * [[development:plugins:related_records_modules|Related Records Modules]] - Providing context-sensitive suggestions in record views * [[development:plugins:search_objects|Search Objects]] - Representing different aspects of searches * [[development:plugins:session_handlers|Session Handlers]] - Custom PHP session storage mechanisms * [[development:plugins:sitemap_generators|Sitemap Generators]] - Generators for additional sitemap files * [[development:plugins:statistics_drivers|Statistics Drivers]] - Modules for gathering search/record view statistics (obsolete as of VuFind 4.0) See also the [[development:howtos:connecting_a_new_external_data_source|Connecting a New External Data Source]] page, which discusses VuFind's various search-related plugins and how to connect new search types. ===== Laminas Plugins ===== * [[development:plugins:controllers|Controllers]] - Adding functionality to the overall VuFind web application. * [[development:plugins:view_helpers|View Helpers]] - Adding convenience methods to your view templates.