Check out four examples to understand how the development of custom modules helps the client business. When to start to think about tailor-made solutions? You will find the correct assessment in the content below.
It is the possibility of developing your custom modules and the Drupal API that makes Drupal one of the best content management systems - when running a simple or multilevel and multilingual website.
Make sure about our competence with the development of a custom module for selected projects.
For the Czech Chamber of Authorized Engineers and Technicians Active in Construction (ČKAIT), we developed nine customized modules. We thus provided the client with a well-thought-out and comprehensive solution.
- Expert Form used to expand (create and edit) the database of authorized persons.
- Expert Search for efficient search in the database with the help of filters.
- A module for displaying the tree category for galleries has also been programmed.
- Module for generating PDF invoices.
- Module designed to insert an advertisement for a job exchange.
- Custom module serving as a custom PHP HTML Mailer (this is a custom HTML e-mail service for Drupal).
- A module that displays building nodes and allows you to vote for individual buildings.
- Module for registering and unsubscribing from the date of certain events within lifelong learning.
- A module whose function is to write data to the database of lifelong learning events, edit them by the administrator and display them to the user.
Prague Classic Rental
For Prague Classic Rental dealing with the rental of apartments in Prague, we overloaded the module. We also re-designed the site.
- Overload of the bat_api module, primarily used to create reservations and monitor availability. In this module, we needed to change a part of the functionality that could not be configured or modified with a so-called hook.
We suggested two own solutions for the insurance company RESPECT Group. We also migrated web content from D7 to D8.
- We designed and implemented a module generating suitable crumb navigation. Basic modules generated an inappropriate solution and caused complications in orientation on the web.
- We created a form for unsubscribing from the newsletter. Emails are copied into the database of the internal systém through this form. As a result, logged-out users are excluded from distribution.
Yuki.cz sells scooters and motorcycles. We have incorporated 2 unique modules.
- Our custom module "captures" the sent order form and properly enters into the system all the dependencies regarding the realized order. Unlike the standard web form, it has a good degree of scalability.
- A special module on a 360 ° gallery enables the 3D presentation of products.
You ask, and we answer
- When should we start thinking about a custom module?
- How is done the development of your Drupal module? What does a programmer need from a client?
- How does the module work? Through what it functions?
- Can one custom module be continuously developed?
- What to keep in mind when developing a custom module to avoid mistakes?
- What else can you help me with on Drupal?
# 1 When should we start thinking about a custom module?
The very core of Drupal is the foundation, which is enhanced by other functionalities.
- The basic set of modules (so-called Drupal core modules) is used for this purpose.
- The Drupal community created and managed the additional modules (so-called contrib modules).
And at the moment when the basic module is not enough, and you do not find the required solution even in the database of modules, there is room for creating your custom module (so-called custom module). If you are not a skilled programmer, contact us, we will save you time.
# 2 How is done the development of your Drupal module? What does a programmer need from me as a client?
It is advisable to compile all the target requirements and ideally carry it out through a discussion with a Drupal expert. It adds the view of a person who sees the system as a whole and understands the various dependencies in the system. Sometimes even a small change in the assignment means a transition from complicated custom functionality, requiring tens of hours of work, to functionality supported by the community and feasible in a significantly shorter time.
If even after the assembly of the main core of the functionality, it is still a custom solution, it is necessary to take into account its robustness. Is it a fast fixed functional feature, or will it change or expand over time? Is it advisable to leave it configurable by the module creator for faster behaviour changes? Wouldn't it be desirable to create a configuration page in the administration so that the client can change the configuration itself? Will the module not be operated on more than one website with minor differences? Based on such an overview, it is already possible to fully determine the scope of work and start the actual implementation.
# 3 How does the custom module work? Through what it functions?
The module works in the same way as other modules in Drupal - by implementing hooks. Hook means the way how the core and the module itself interact. After a request is made by a user (such as a request to view a specific page), the core goes through a list of hooks, allowing each enabled module - which implements an initialization hook - to "hook".
Hooks are often referred to in IT as "events". If certain events occur, Drupal allows modules to respond to them.
# 4 Can one custom module be continuously developed?
Of course, for example, if you are planning other follow-up functions. And since Drupal is an open-source solution, the Drupal community can make a significant contribution to its development if we share it.
# 5 What to keep in mind when developing a custom module to avoid mistakes?
We recommend using the accompanying documentation for the version of Drupal for which the module is being developed. The individual versions of the content management system can differ considerably from each other, and in the case of using another API - mostly higher - the version often encounters errors. It is also not advisable to interfere directly with the Drupal core or with downloaded additional modules, as you prevent updates by entering your modifications.
# 6 What else can you help me with on Drupal?
The services we provide are relatively comprehensive. First of all, we deal with Drupal management. It has two forms - on the one hand, we can talk about regular management, which focuses mainly on ensuring web security and implementation of necessary updates, and on the other hand about programming management when we incorporate your specific requirements. The whole project can be - as in the case of custom modules - implemented to measure.
We also offer Drupal hosting for both small, medium or large websites and e-shops. Our solution is characterized by high performance and wide availability, which was also convinced by our important clients, such as Czech Television, Czech Radio or FTV Prima.
For your website to be visible in search results and to be filled with quality content, we also focus on SEO or Search Engine Optimization: technical SEO and content SEO.
If you are not yet using the latest version of Drupal, we will help with the transition to the latest version and also with the migration from another content management system.