This project is not covered by Drupal’s security advisory policy.

Note: this is a back-end utility module with no user interface. All interaction with the module is currently handled through Drush unless a module referencing this as a dependency adds additional functionality.

High Level Overview

YAML Content is intended for importing and exporting (coming later) content while minimizing hurdles related to interrelation of content. All content for import and export is formatted in a YAML structure parallel to the entity value arrays to make extending the data as simple as possible.

Content may be defined using the human-writable YAML structure allowing the definition of any entity structure available in the Drupal installation. This includes the creation of content nodes, but also extends beyond to include items such as:

  • Taxonomy terms
  • Media files
  • Content blocks
  • Menu links
  • Any other defined entity type

The flexibility for the interrelation of content really comes into play through the use of content processors that support completion of more dynamic portions of the imported content, like entity references or uploaded image files. Using the existing processor functions, targeted node content, taxonomy terms, or even files to be uploaded may be referenced in the YAML files so they may be resolved dynamically during import.

Basic Usage

For basic usage instructions and how to install the demo content look in the README.txt file within the module. To see an example content file used for import, have a look at content/demo.content.yml within the module.

Helpful Resources

Versions

8.x-1.x

The 8.x-1.x branch is the currently supported and recommended implementation. It provides the functionality described above supporting content importing and dynamic content processing.

8.x-2.x

Note: The 8.x-2.x branch is a work in progress and is not advised for production use.

The 8.x-2.x branch is an in-progress rewrite of the original implementation using more object-oriented distribution of functionality to support and promote extensibility through:

  • Custom processing plugins
  • Event dispatching and event subscribers
  • More dynamic service-level configuration

Related Modules

Supporting organizations: 
Module development

Project information

Releases