Drupal 8 development cookbook : harness the power of Drupal 8 with this recipe-based practical guide / Matt Glaman.
2017
TK5105.8885.D78
Formats
Format | |
---|---|
BibTeX | |
MARCXML | |
TextMARC | |
MARC | |
DublinCore | |
EndNote | |
NLM | |
RefWorks | |
RIS |
Linked e-resources
Details
Title
Drupal 8 development cookbook : harness the power of Drupal 8 with this recipe-based practical guide / Matt Glaman.
Author
Edition
Second edition.
ISBN
9781788299220
1788299221
9781788290401
1788290402
1788299221
9781788290401
1788290402
Published
Birmingham, UK : Packt Publishing, 2017.
Language
English
Description
1 online resource (1 volume) : illustrations
Call Number
TK5105.8885.D78
System Control No.
(OCoLC)1007536526
Summary
Over 60 hands-on recipes that get you acquainted with Drupal 8's features and help you harness its power About This Book Discover the enhanced content authoring experience that comes with Drupal 8 and how to customize it Take advantage of the broadened multilingual and tools of the new version to provide an internationalized website This step-by-step guide will show you how to deploy from development, staging, and production of a website with Drupal 8's brand new configuration management system Who This Book Is For The audience of the Drupal 8 Cookbook have been using Drupal and are ready to get a grasp of what to expect in Drupal 8. They have worked with Drupal as site builders, back-end developers, and front-end developers and are eager to see what awaits when they start using Drupal 8. This book will be a resource that allows them to get started and have a reference to building new applications with Drupal. What You Will Learn Extend Drupal through contributed or custom modules and themes Develop an internationalized website with Drupal's multilingual tools Integrate third-party front-end and back-end libraries with Drupal Turn Drupal into a web services provider using REST Create a mobile-first responsive Drupal application Run SimpleTest and PHPUnit to test Drupal Understand the plugin system that powers many of Drupal 8's new APIs to extend its functionality Get to grips with the mechanics of the configuration management system and the ability to import and export site configuration In Detail Began as a message board, Drupal today is open source software maintained and developed by a community of over 1,000,000 users and developers. Drupal is used by numerous local businesses to global corporations and diverse organizations all across the globe. With Drupal 8's exciting features it brings, this book will be your go-to guide to experimenting with all of these features through helpful recipes. We'll start by showing you how to customize and configure the Drupal environment as per your requirements, as well as how to install third-party libraries and then use them in the Drupal environment. Then we will move on to creating blocks and custom modules with the help of libraries. We will show you how to use the latest mobile-first feature of Drupal 8, which will help you make your apps responsive across all the major platforms. This book will also show you how to incorporate multilingual facilities in your sites, use web services and third-part ...
Note
Previous edition published: 2016.
Bibliography, etc. Note
Includes bibliographical references.
Formatted Contents Note
Cover
Copyright
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Up and Running with Drupal 8
Introduction
Installing Drupal
Getting ready
How to do it...
How it works...
There's more...
Creating a database user and a database
Database prefixes
Downloading and installing with Drush
Using Composer to create a Drupal site
Security updates
See also
Using a distribution with Drupal
How to do it...
How it works...
There's more...
Makefiles
Installing with Drush
Using Composer
See also...
Installing modules and themes
Getting ready
How to do it...
How it works...
Discovering modules and themes
Module installation
Theme installation
There's more...
Installing a module or theme using Composer
Installing a module with Drush
Uninstalling a module
See also
Using multisites in Drupal 8
Getting ready
How to do it...
How it works...
There's more...
Security concerns
Domain aliases
See also...
Tools for setting up an environment
Getting ready
How to do it...
How it works...
There's more...
Acquia Dev Desktop
XAMPP + Bitnami
Kalabox
See also
Running tests
Simpletest and PHPUnit
Getting ready
How to do it...
How it works...
There's more...
Is run-tests a shell script?
Running tests without Drupal installed
Running specific tests
PhpStorm
Drupal Test Runner
DrupalCI
See also...
Chapter 2: The Content Authoring Experience
Introduction
Configuring the WYSIWYG editor
Getting ready
How to do it...
How it works...
There's more...
Filter module
Improved links
CKEditor plugins
See also
Adding and editing content
Getting ready
How to do it.
How it works...
There's more...
Save as draft
Pathauto
Bulk moderation
See also
Creating a menu and linking content
Getting ready
How to do it...
How it works...
There's more...
Managing a contents menu link from its form
Providing inline editing
How to do it...
How it works...
There's more...
The outside-in approach
Creating a custom content type
How to do it...
How it works...
Applying new Drupal 8 core field types
Getting ready
How to do it...
Link
The Email field
The Telephone field
The Date field
The Entity Reference field
How it works...
There's more...
Upcoming updates
Views and Entity Reference
See also
Customizing the form display of a node
How to do it...
How it works...
There's more...
Managing form display modes
Programmatically providing a default to hidden form items
See also
Customizing the display output of a node
How to do it...
How it works...
Chapter 3: Displaying Content through Views
Introduction
Listing content
Getting ready
How to do it...
How it works...
There's more...
Views in Drupal core initiative
Views and displays
Format style plugins
style and row
Using the Embed display
See also
Editing the default admin interfaces
How to do it...
How it works...
There's more...
Exposed versus non-exposed
Filter identifiers
Overriding routes with Views
Creating a block from a View
Getting ready
How to do it...
How it works...
There's more...
Exposed forms as blocks
See also
Utilizing dynamic arguments
How to do it...
How it works...
There's more...
Previewing with contextual filters
Displaying as a tab on the user page
Altering the page title
Validation
Multiple and exclusion.
Adding a relationship in a View
How to do it...
How it works...
There's more...
Relationships provided by entity reference fields
Relationships provided through custom code
Using aggregation and views.
Providing an Entity Reference result View
How to do it...
How it works...
See also
Chapter 4: Extending Drupal
Introduction
Creating a module
How to do it...
How it works...
There's more...
Module namespaces
Module discovery locations
Defining a package group
Module dependencies
Specifying the module's version
See also...
Defining a custom page
Getting ready
How to do it...
How it works...
There's more...
Parameters in routes
Validating parameters in routes
Route requirements
Providing dynamic routes
Altering existing routes
See also
Defining permissions
Getting ready
How to do it...
How it works...
There's more...
Restrict access flag for permissions
Defining permissions programmatically
Checking whether a user has permissions
Providing the configuration on the installation or update
Getting ready
How to do it...
How it works...
There's more...
Configuration subdirectories
Modifying the existing configuration on installation
See also
Creating an event subscriber
How to do it...
How it works...
There's more...
Using dependency injection
See also
Using Features 3.0
How to do it...
How it works...
There's more...
Suggested feature modules
Features bundles
Managing the configuration state of Features
See also
Chapter 5: Frontend for the Win
Introduction
Creating a custom theme based on Classy
How to do it...
How it works...
There's more...
Theme screenshots
Themes, logos, and favicons
Base themes and shared resources
CKEditor style sheets.
See also
Using the new asset management system
Getting ready
How to do it...
How it works...
There's more...
CSS groups
Library asset options
Library dependencies
Overriding and extending other libraries
Using a CDN or external resource as a library
Manipulating libraries from hooks
Placing JavaScript in the header
See also
Twig templating
Getting ready
How to do it...
How it works...
There's more...
Security first
Theme hook suggestions
Debugging template file selection and hook suggestions
The Twig logic and operators
See also
Using the Breakpoint module
Getting ready
How to do it...
How it works...
There's more...
Caveat for providing breakpoints from themes
Accessing breakpoints programmatically
Multipliers
See also
Using the Responsive Image module
Getting ready
How to do it...
How it works...
There's more...
Performance first delivery
Removing picturefill polyfill
See also
Chapter 6: Creating Forms with the Form API
Introduction
Creating a form
Getting ready
How to do it...
How it works...
There's more...
Form element definitions
The form state
The form cache
See also
Using new HTML5 elements
Getting ready
How to do it...
How it works...
There's more...
Specific element properties
Creating new elements
See also
Validating form data
Getting ready
How to do it...
How it works...
There's more...
Multiple validation handlers
Accessing multidimensional array values
Element validation methods
Processing submitted form data
Getting ready
How to do it...
How it works...
There's more...
Multiple submit handlers
See also
Altering other forms
Getting ready
How to do it...
How it works...
There's more.
Adding additional validate handlers
Adding additional submit handlers
Chapter 7: Plug and Play with Plugins
Introduction
Creating blocks using plugins
Getting ready
How to do it...
How it works...
There's more...
Altering blocks
Block settings forms
Defining access to a block
See also
Creating a custom field type
Getting ready
How to do it...
How it works...
There's more...
Altering field types
Defining whether a field is empty
See also
Creating a custom field widget
Getting ready
How to do it...
How it works...
There's more...
Field widget settings and summary
See also
Creating a custom field formatter
Getting ready
How to do it...
How it works...
There's more...
Formatter settings and summary
See also
Creating a custom plugin type
Getting ready
How to do it...
How it works...
There's more...
Specifying an alter hook
Using a cache backend
Accessing plugins through the manager
See also
Chapter 8: Multilingual and Internationalization
Introduction
Translating administrative interfaces
Getting ready
How to do it...
How it works...
There's more...
Manually installing language files
Checking translation status
Exporting translations
Interface translation permissions
Using interface translation to customize default English strings
Interface text language detection
Providing translations for a custom module
See also
Translating configuration
Getting ready
How to do it...
How it works...
There's more...
Altering configuration translation info definitions
Translating views
See also
Translating content
Getting ready
How to do it...
How it works
There's more...
Flagging translations as outdated
Translating content links.
Copyright
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Up and Running with Drupal 8
Introduction
Installing Drupal
Getting ready
How to do it...
How it works...
There's more...
Creating a database user and a database
Database prefixes
Downloading and installing with Drush
Using Composer to create a Drupal site
Security updates
See also
Using a distribution with Drupal
How to do it...
How it works...
There's more...
Makefiles
Installing with Drush
Using Composer
See also...
Installing modules and themes
Getting ready
How to do it...
How it works...
Discovering modules and themes
Module installation
Theme installation
There's more...
Installing a module or theme using Composer
Installing a module with Drush
Uninstalling a module
See also
Using multisites in Drupal 8
Getting ready
How to do it...
How it works...
There's more...
Security concerns
Domain aliases
See also...
Tools for setting up an environment
Getting ready
How to do it...
How it works...
There's more...
Acquia Dev Desktop
XAMPP + Bitnami
Kalabox
See also
Running tests
Simpletest and PHPUnit
Getting ready
How to do it...
How it works...
There's more...
Is run-tests a shell script?
Running tests without Drupal installed
Running specific tests
PhpStorm
Drupal Test Runner
DrupalCI
See also...
Chapter 2: The Content Authoring Experience
Introduction
Configuring the WYSIWYG editor
Getting ready
How to do it...
How it works...
There's more...
Filter module
Improved links
CKEditor plugins
See also
Adding and editing content
Getting ready
How to do it.
How it works...
There's more...
Save as draft
Pathauto
Bulk moderation
See also
Creating a menu and linking content
Getting ready
How to do it...
How it works...
There's more...
Managing a contents menu link from its form
Providing inline editing
How to do it...
How it works...
There's more...
The outside-in approach
Creating a custom content type
How to do it...
How it works...
Applying new Drupal 8 core field types
Getting ready
How to do it...
Link
The Email field
The Telephone field
The Date field
The Entity Reference field
How it works...
There's more...
Upcoming updates
Views and Entity Reference
See also
Customizing the form display of a node
How to do it...
How it works...
There's more...
Managing form display modes
Programmatically providing a default to hidden form items
See also
Customizing the display output of a node
How to do it...
How it works...
Chapter 3: Displaying Content through Views
Introduction
Listing content
Getting ready
How to do it...
How it works...
There's more...
Views in Drupal core initiative
Views and displays
Format style plugins
style and row
Using the Embed display
See also
Editing the default admin interfaces
How to do it...
How it works...
There's more...
Exposed versus non-exposed
Filter identifiers
Overriding routes with Views
Creating a block from a View
Getting ready
How to do it...
How it works...
There's more...
Exposed forms as blocks
See also
Utilizing dynamic arguments
How to do it...
How it works...
There's more...
Previewing with contextual filters
Displaying as a tab on the user page
Altering the page title
Validation
Multiple and exclusion.
Adding a relationship in a View
How to do it...
How it works...
There's more...
Relationships provided by entity reference fields
Relationships provided through custom code
Using aggregation and views.
Providing an Entity Reference result View
How to do it...
How it works...
See also
Chapter 4: Extending Drupal
Introduction
Creating a module
How to do it...
How it works...
There's more...
Module namespaces
Module discovery locations
Defining a package group
Module dependencies
Specifying the module's version
See also...
Defining a custom page
Getting ready
How to do it...
How it works...
There's more...
Parameters in routes
Validating parameters in routes
Route requirements
Providing dynamic routes
Altering existing routes
See also
Defining permissions
Getting ready
How to do it...
How it works...
There's more...
Restrict access flag for permissions
Defining permissions programmatically
Checking whether a user has permissions
Providing the configuration on the installation or update
Getting ready
How to do it...
How it works...
There's more...
Configuration subdirectories
Modifying the existing configuration on installation
See also
Creating an event subscriber
How to do it...
How it works...
There's more...
Using dependency injection
See also
Using Features 3.0
How to do it...
How it works...
There's more...
Suggested feature modules
Features bundles
Managing the configuration state of Features
See also
Chapter 5: Frontend for the Win
Introduction
Creating a custom theme based on Classy
How to do it...
How it works...
There's more...
Theme screenshots
Themes, logos, and favicons
Base themes and shared resources
CKEditor style sheets.
See also
Using the new asset management system
Getting ready
How to do it...
How it works...
There's more...
CSS groups
Library asset options
Library dependencies
Overriding and extending other libraries
Using a CDN or external resource as a library
Manipulating libraries from hooks
Placing JavaScript in the header
See also
Twig templating
Getting ready
How to do it...
How it works...
There's more...
Security first
Theme hook suggestions
Debugging template file selection and hook suggestions
The Twig logic and operators
See also
Using the Breakpoint module
Getting ready
How to do it...
How it works...
There's more...
Caveat for providing breakpoints from themes
Accessing breakpoints programmatically
Multipliers
See also
Using the Responsive Image module
Getting ready
How to do it...
How it works...
There's more...
Performance first delivery
Removing picturefill polyfill
See also
Chapter 6: Creating Forms with the Form API
Introduction
Creating a form
Getting ready
How to do it...
How it works...
There's more...
Form element definitions
The form state
The form cache
See also
Using new HTML5 elements
Getting ready
How to do it...
How it works...
There's more...
Specific element properties
Creating new elements
See also
Validating form data
Getting ready
How to do it...
How it works...
There's more...
Multiple validation handlers
Accessing multidimensional array values
Element validation methods
Processing submitted form data
Getting ready
How to do it...
How it works...
There's more...
Multiple submit handlers
See also
Altering other forms
Getting ready
How to do it...
How it works...
There's more.
Adding additional validate handlers
Adding additional submit handlers
Chapter 7: Plug and Play with Plugins
Introduction
Creating blocks using plugins
Getting ready
How to do it...
How it works...
There's more...
Altering blocks
Block settings forms
Defining access to a block
See also
Creating a custom field type
Getting ready
How to do it...
How it works...
There's more...
Altering field types
Defining whether a field is empty
See also
Creating a custom field widget
Getting ready
How to do it...
How it works...
There's more...
Field widget settings and summary
See also
Creating a custom field formatter
Getting ready
How to do it...
How it works...
There's more...
Formatter settings and summary
See also
Creating a custom plugin type
Getting ready
How to do it...
How it works...
There's more...
Specifying an alter hook
Using a cache backend
Accessing plugins through the manager
See also
Chapter 8: Multilingual and Internationalization
Introduction
Translating administrative interfaces
Getting ready
How to do it...
How it works...
There's more...
Manually installing language files
Checking translation status
Exporting translations
Interface translation permissions
Using interface translation to customize default English strings
Interface text language detection
Providing translations for a custom module
See also
Translating configuration
Getting ready
How to do it...
How it works...
There's more...
Altering configuration translation info definitions
Translating views
See also
Translating content
Getting ready
How to do it...
How it works
There's more...
Flagging translations as outdated
Translating content links.
Source of Description
Online resource; title from cover (Safari, viewed October 24, 2017).
Linked Resources
Record Appears in