Drupalize remote data with external entities

Rodrigo AguileraWeb developer at Ymbra

Drupal.org: rodrigoaguileraTwitter: @marinero Sailor

Hello There

Thanks to attiks and Jelle Sebreghts (Jelle_S) Who initialy developed the module
and Datascape for testing and sponsoring.

Ymbra

Ready to sail

Sailorwoman

Agenda

  • Why external entities?
  • Basic functionality.
  • Example use case.
  • Advanced features.
  • Future for the module.

Disclaimer

Alpha stage

Why external entities?

Main purpose

Allows you to connect to datasets from external databases and use it in your Drupal 8 website.

Easy mapping of data that doesn't live in the drupal database into fields, display modes, form modes, etc.

What is considered "external"?

  • REST API endpoints
  • External database
  • Web scrapping
  • spreadsheets
  • Files, sensors...

What made it possible

Drupal 8 is database agnostic

Entity API is awesome

Similar modules

  • Remote Entity API (D7)
  • Web Service Clients (D7)
  • Feeds
  • Data

Limitations

  • Each external entity will be a bundle
  • (so ids will be like 'external-42')
  • No comments on external entities
  • No views (but there is hope)

Basic functionality

Demo time

Example use case

External database

Advanced features

Entity (field) queries

$external_users = \Drupal::entityQuery('external_entity') ->condition('type', 'user')
->execute();

Search API indexing

Important: Exactly one bundle must be specified.

The future

Wishlist

  • Pathauto support (almost there)
  • Multilingual
  • Examples
  • Tests

Drupal summer

June 30 - July 2

THANKS!