JSON Field Query & Formatter
This module adds a field type for storing JSON data that allows you to easily extract and display specific pieces of information using a dot-notation path. It's useful for handling structured data from APIs or complex configurations.
The JSON Field Query & Formatter module provides a field type for storing JSON data with advanced querying capabilities. Unlike basic JSON field modules that only validate and store JSON, this module allows you to extract and display specific parts of JSON data using dot notation queries, making it ideal for working with API responses, complex configurations, and structured data.
It supports :
- Dot Notation Queries: Extract specific values using paths like user.profile.name or products.0.price
- Array Support: Access array elements with indices like items.2.name
- Json Validation
Requirements
- Drupal 10.x or 11.x
- PHP 8.1 or higher
Installation
- Install and enable the module.
- Go to Structure » Content types » [Your content type] » Fields , and Add Field
- Select JSON Field Query field type
- Similarly this field can be added to any other entities as well like taxonomy etc.
Usage:
Add JSON data to your field:
{
"user": {
"personal": {
"firstName": "John",
"lastName": "Doe"
},
"contact": {
"email": "[email protected]"
}
}
}
Now in code these nested values can be accessed easily.
$service = \Drupal::service('json_field_query.json_query_service');
$json_data = $node->get('field_json_data')->value;
$value = $service->queryJson($json_data, 'user.personal.firstName'); // Will display John