Member for

2 years 11 months
Raman Batra

Raman is an Open Source enthusiast and likes to play around with web and mobile development technologies. In his free time, he loves to catch up with the episodes of Silicon Valley.

New versions of PHP bring new features and fixes for security issues and bugs. Migrating from one version to another can often lead to incompatibilities. As of writing this article, PHP 7.2 is the latest stable release and PHP 7.3 is expected to be released in December 2018. currently recommends PHP 7.1+ for new projects and encourages the community to plan an upgrade for older… Read more
The internet is a wild place. You never know who’s on the hunt for vulnerabilities of your site. In fact, the moment you deploy your application on the web, you are inviting all sorts of requests on your server. Apart from genuine users, these could potentially be automated scripts, (mostly harmless) bots or crawlers, ethical/non-ethical hackers or some curious geeks (like me). One of the key… Read more
Teasers provide a brief summary or a short description of an article (or any other content). They give a visitor an insight and a quick overview of the content. Hence, it becomes crucial for a teaser to be eye-catchy in order to get that one click from the reader. It should leave them with a sense of curiosity and intrusiveness. Drupal, out of the box, provides a teaser view mode and three… Read more
Modern applications are expected to be equipped with powerful search engines. Drupal provides a core search module that is capable of doing a basic keyword search by querying the database. When it comes to storing and retrieving data, databases are very efficient and reliable. They can be also used for basic filtering and aggregating of data. However, they are not very efficient when it comes to… Read more
The number of mobile users who access the web has been ever increasing and it has forced content publishers to provide a better experience. These mobile users could potentially be on limited bandwidth with lower internet speeds and low-end devices.  A standard built on top of existing technologies to speed up the loading of web pages on mobile devices. As a result, advertisements, offer pop-… Read more
There has been a rapid increase in the popularity of JavaScript frameworks since their introduction in early 2010. They provide powerful architectures to build fluid, responsive and user-friendly web applications. Moreover, there are more people than ever using their mobile devices to access the digital content, hence building native applications for your site makes sense.  Drupal has realized… Read more
Touch has become an integral part of how we interact with our devices. It is the primary and most intuitive way of interacting with smartphones, tablets, Chromebooks, hybrid laptops and other touchscreen devices. Toss up your device to a five-year-old and they would quickly figure out how to operate it. Web browsers, however, were initially designed for big screens with pointer devices. Even… Read more
If you are familiar with UNIX or Linux, you may recall cron as a daemon, or a background process which is used to schedule tasks at regular intervals of time. These tasks or “cron jobs” are generally performed on servers and they include backing up of databases and other files, clearing up logs, sending system reports or newsletters, and so on. They are defined inside a crontab file and are… Read more
Block system has been one of the key improvements in Drupal 8. They are exportable, fieldable and reusable elements that can be placed inside regions of a page. All these functionalities are provided by the Block core module which is enabled by default. Another interesting feature about the block system is the ability to show or hide these blocks depending upon the conditions provided by the… Read more
Web services have evolved in the last two decades from XML RPC to SOAP to REST (and now recently to GraphQL). All of these are architectural styles for designing web services that specify certain principles. We no longer just serve HTML pages over HTTP and Drupal has acknowledged that by adding the support for REST into the core. This means that we can create RESTful APIs using Drupal as a… Read more
One thing that you may expect from a content management system is the ability to schedule articles or posts at a given time. Unfortunately, Drupal does not support this functionality out of the box. But the same can be achieved with the help of a contributed module Scheduler. This module allows us to schedule an article (or content of any other type), to be published (or unpublished) at a given… Read more
Blocks and layouts have come a long way in Drupal. Blocks have become powerful, fieldable, and reusable elements that can be placed into regions within a layout. While the layouts are now managed by the Layout API provided by the Layout Discovery core module. This allows the layouts to be shared by different modules. When we talk about layouts in Drupal, we may refer to the layout of the whole… Read more
If you have ever used Drupal core, you must know how barebone it is out-of-the-box. It can be overwhelming for an average internet user to understand all the Drupal terminologies like blocks, views, taxonomies, etc. And truth be told, Drupal core does not satisfy the requirements of an end user. Developers, site builders, and themers need to configure the Drupal site before a content editor can… Read more
“The Display Suite module (DS) allows you to take full control over how your content is displayed using a drag and drop interface. Arrange your nodes, views, comments, user data etc. the way you want without having to work your way through dozens of template files.” Layouts of all the views in a Drupal site are controlled by the installed theme. To override them, you need to override the HTML… Read more
Entities in Drupal provide a structured way of storing and managing data. With the inclusion of Entity API in Drupal 8, it becomes even easier to manage existing, and creating new entities. Similar entities are grouped into Entity Types, which further have subtypes known as Bundles, to which fields can be attached. For example, the node entity type has two bundles — Articles, and Basic page. The… Read more
 “Chaos Tool Suite (CTools) is primarily a set of APIs and tools to improve the developer experience.” - Chaos Tool Suite (CTools) is a contributed project in Drupal that is oriented towards developers. It is essentially a set of helper classes that can be extended to simplify certain workflows and defining custom functionalities. Many contributed modules including Pathauto, Panels… Read more
When a module is updated, it may add new or change existing configurations items. To track, export, import and revert back from these changes in configuration items, Configuration Update module can be used. Note that it is not recommended to change any configurations on a live site. Configuration files in Drupal are used to store information such as basic site settings, block layouts,… Read more
Drupal 8 introduced Entity Reference as a part of Drupal core. This allows entities (such as nodes, taxonomies, users, file, etc) to add a reference to other entities out of the box. This relationship may be a one-to-one or one-to-many. The referenced item is called a parent entity and the referencing item is known as child entity. The usual workflow expects the users to add the parent entity… Read more
“The Pathauto module automatically generates URL/path aliases for various kinds of content (nodes, taxonomy terms, users) without requiring the user to manually specify the path alias” - Considered as one of the best practices for SEO, it is essential that your Uniform Resource Locator aka URL assists any layman in locating your resources easily. A crucial element when preparing… Read more