Dear readers, these Drupal Interview Questions have been designed specially to get you acquainted with the nature of questions you may encounter during your Job interview for the subject of Drupal. As per my experience good interviewers hardly plan to ask any particular question during your Job interview, normally questions start with some basic concept of the subject and later they continue based on further discussion and what you answers:
Drupal is a free and open source Content Management System (CMS) that allows organizing, managing and publishing your content.
Drupal is free, open-source content management framework written in PHP. Drupal is distributed under GNU General Public License.
Drupal is a framework which organize, manage and publish content easily and provides a lot of features of customization.
Drupal is very powerful and can be used for building large, complex sites. It is PHP based template and allows non-technical users to add and edit the content without any HTML or Web design knowledge. Using Drupal CMS, it
can be easy to interact with other sites or technologies and can handle complex forms and workflows. It is available with more than 16000 modules which can be addressed with Drupal core and add-on modules.
The Features of Drupal are:
It makes easy to create and manage your site.
Translates anything in the system with built-in user interfaces.
It connects your website to other sites and services using feeds, search engine connection capabilities etc.
Drupal is open source software hence requires no licensing costs.
It designs highly flexible, creative website to the users and display more effectively to increase the visitors.
Drupal can publish your content on social media such as Twitter, Facebook and other social mediums.
System requirements for Drupal 8:
Web server: Apache, Nginx, or Microsoft IIS
Database: MySQL 5.5.3/MariaDB 5.5.20/Percona Server 5.5.8 or higher with PDO and an InnoDB-compatible primary storage engine, PostgreSQL 9.1.2 or higher with PDO, SQLite 3.6.8 or higher
PHP 5.5.9 or higher
PHP Memory: 60 MB
Drupal has a lot of features:
Simple and secure theme
Provides multilingual features
Built-in web services
Fast loading speed
A module is a set of codes that extend Drupal features and functionality.
Core modules: These modules are included with the main download of Drupal, and you can turn on their functionality without installing additional software.
Contributed modules: These modules are downloaded from the Modules download section of drupal.org, and installed within your Drupal installation.
You can also create your own module "CustomModules" using PHP programming, and Drupal's module API.
Some of the modules recommended are:
Sub themes are just like other themes of Drupal but they have a little difference. Sub themes inherit the parent's theme. There are many sub themes that can be connected to their parents. A sub-theme can be a child of another sub-theme, and it can be branched and organized however you see fit. This is what gives sub-themes great potential.
PDO stands for PHP Data Object. It is a lean and consistent way to access databases. It facilitates developers to write portable codes easily. PDO is not an abstraction layer. It is more like a data access layer which uses a unified API.
DRUSH is a command line shell and UNIX scripting interface for Drupal.
Yes. Drupal can run on command line by using DRUSH.
Ctools is a set of APIs and tools which is used to improve the developer experience.
Render arrays are the basic building blocks in Drupal. They provide you a structured way to programmatically change the content before it is displayed.
Patches are the files that contain a list of differences between one set of files, and another. You can make changes like addition, deletion in codes through patches. Patches can also be used to make changes to another copy of the original or main file.
No. It is not possible to disable a core required module through Drupal admin.
In Drupal database system, each type of information has its own database table. Different types of information will be stored in different database table. For example, nodes information is stored in nodes table.
Drupal supports MySQL/MariaDB, PostgreSQL, and in Drupal 7 SQLite.
To drop a table you can use db_drop_table in install file.
Distributions are full copies of Drupal including Drupal core along with additional software such as modules, libraries and installation profiles.
Distributions are used for:
Quickly binding Site
The term weight in Drupal is used to order nodes. Nodes with lower weight will be at top of the list while nodes with heavier weight will be at lower position.
The term cron is a daemon that executes commands at specified interval. Drupal cron executes commands or scripts automatically at specified interval.
Languages in which Drupal can be translated are:
Data (nodes, etc)
Blocks and menus
Themes and templates
The field API allows custom data fields to be attached to Drupal entities. Any entity type can use field API to make itself "fieldable" means allows fields to attach to it.
Drupal treats all the stored content on its web site as nodes. Any piece of content like blog, article, page, etc is considered as node. Although, the comments are not stored as nodes but they are always connected to a node.
The template.php file in the theme directory allows you to override a theme function.
Drupal integrates well with external search engines such as Xapian, Apache solr if the built-in search engine does not meet your needs properly.
Hooks are Drupal API code which allows module to interact with Drupal core. Its module system is based on the hooks concept.
There are three ways to interact with Drupal search system by implementing:
nodeapi (update index)
Be default, Drupal doesn't allow the insertion of PHP codes in its pages. To embed PHP codes, you need to activate a Drupal module called PHP filter. By default, this module remains disabled.
The Sections module allows applying different themes to different pages in a Drupal site.
Drupal classifies its content which is called taxonomy and is implemented in the core Taxonomy module.
Menus are very important to navigate your website easily. Menus offer a set of links as a result; you can navigate your website. The Drupal menu allows you to add, remove and rename the menus and menu items.
Blocks are container objects that are used to organize your content of your website.
Pane module is used to translate the custom panel's pane with optional title that will be stored as variables and it can be translate or edit quickly.