How To Manage Breadcrumbs In Your Drupal 8 Module

Overview

In this tutorial, we will go through how to set breadcrumbs in your Drupal 8 module. In Drupal 7 we were using drupal_set_breadcrumb(). In Drupal 8 drupal_set_breadcrumb() is removed and breadcrumbs are managed using the Breadcrumb service. There are only a few steps to do this:

  • Declare your service
  • Define a class implementing BreadcrumbBuilderInterface

This tutorial assumes that you have a working Drupal 8 module.

How to programmatically add a product variation to the cart in Drupal commerce 2.x (Drupal 8)

Playing a bit with Drupal commerce in Drupal 8, we notice that several functions that we used to use in the past with D7 are gone in D8, or they've had several changes, dued to the new API.

Drupal commerce has lots of changes. The new concept give us more flexibility and features (for example, we don't need a content type to display our products, because they have now their own display page, the product variations are now in commerce core, or the Store concept.).

An user pays credits for publishing a post

Paying credits for doing actions on a site makes it necessary to check user credits before performing the action. So I use an "Before saving content" event and a "Entity has credits" action to do so.

To avoid publishing the post we send the user back to the add content form using a custom "Execute custom PHP code" action. In order to allow PHP snippets you have to activate core module "PHP filter".

The first rule looks like that:

An user earns credits for publishing a post

After creating Credit Types at admin/commerce/credits/types (see README.txt for details) you are ready to use credits account. They are linked to users, so adding and removing credits must be related to an user entity.

Here a simple rule which adds 1 credit to users who write a blog post:

Drupal 8 Release

Viewfield 8.x-3.x

The Viewfield module defines an entity reference field type to display a view. Viewfield enables an administrator or content author to integrate a views display into any fieldable entity, such as content, users or paragraphs. In addition, through the use of the Always use default value setting, the same view(s) may automatically be placed into all entities in a bundle. Viewfield has considerable theming support, making it easy to customize presentation.

BS Base

@TODO - this will be a documentation for bs_base base theme.

In the meantime check theme README.md for current up to date theme documentation.

Pages

Subscribe with RSS Subscribe to RSS - Intermediate