Book Image

Drupal 8 Development: Beginner's Guide - Second Edition

By : Neeraj Kumar, Tassos Koutlas, Samuel Keen, Edward Crompton, Krishna Kanth, Rakesh James, Malabya Tewari, Kurt Madel
Book Image

Drupal 8 Development: Beginner's Guide - Second Edition

By: Neeraj Kumar, Tassos Koutlas, Samuel Keen, Edward Crompton, Krishna Kanth, Rakesh James, Malabya Tewari, Kurt Madel

Overview of this book

<p>Drupal is one of the most popular platforms with which to develop websites. With more and more organizations looking to build engaging digital experience for their stakeholders, the Drupal Content Management System offers a mobile-first platform with native support for integrations, better performance, and scalability. The new version brings significant changes to its module development and theme creation techniques, improving performance and refining the development experience.</p> <p>This book will help you develop your own website using Drupal 8 in a step-by-step manner. You’ll start off by setting up your development environment, enabling you to begin writing custom code for a Drupal-powered website through PHPStorm. You will learn about configuration management and creating custom content types before exploring the HTML5 features included with Drupal 8.</p> <p>You will then get familiar with Drupal 8’s mobile-first features, explore the built-in WYSIWYG and in-line editing capabilities of Drupal 8, and enhance the overall authoring experience. Later, you will create and enhance a Media Entity Lightbox module, before taking an in-depth look at the Views module.</p> <p>We then cover some advanced search concepts and walk you through the installation and integration of the Java-based Apache Solr search engine. Finally, you will explore and configure the built-in support for REST and extend its support by installing the RESTful module. By the end of the book, you will have created a recipe sharing website while gaining a solid understanding of development best practices for Drupal 8.</p>
Table of Contents (20 chapters)
Drupal 8 Development Beginner's Guide Second Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Time for action – creating a block to aid the authoring experience


Let's create a custom block that will be available to authenticated users to create new recipes when visiting a recipe page. Our module will be called author_tool:

  1. Create a structure similar to what we saw in the last screenshot.

  2. Create a author_tool.info.yml file and create a dependency of your module with the block system:

    name: Author tool
    type: module
    description: A custom block to allow content editors to quickly add a new recipe.
    core: 8.x
    dependencies:
      - block
  3. Extend the BlockBase class with your own implementation, AuthorToolBlock, and place the following code in it:

    <?php
    
    /**
     * @file
     * Contains \Drupal\author_tool\Plugin\Block\AuthorToolBlock.php.
     */
    
    namespace Drupal\author_tool\Plugin\Block;
    
    use Drupal\Core\Block\BlockBase;
    
    /**
     * Provides a custom block.
     *
     * Drupal\Core\Block\BlockBase gives us a very useful set of basic functionality
     * for this configurable block. We can just fill in a few of the blanks...