Skip to content

Instantly share code, notes, and snippets.

@reinis-kinkeris
reinis-kinkeris / gist:510fc0145eb6ecd4c9a89627a994d312
Created July 11, 2017 15:17
Drupal 8 - Example how to extract entity values into array with referenced entities
$fields = $entity->getFields();
$entity_values = [];
/** @var \Drupal\Core\Field\FieldItemList $field */
foreach ($fields as $field_id => $field) {
$entity_values[$field_id] = $field->getValue();
if (method_exists($field, 'referencedEntities')) {
$referenced_entities = $field->referencedEntities();
@reinis-kinkeris
reinis-kinkeris / MY_THEME.theme
Last active May 26, 2017 08:56
D8 - Implements form inner wrapper with suggestions so form elements can be rearranged.
<?php
/**
* Implements hook_form_alter().
*
* @param $form
* @param \Drupal\Core\Form\FormStateInterface $form_state
* @param $form_id
*/
function MY_THEME_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
@reinis-kinkeris
reinis-kinkeris / CustomSql.php
Created April 27, 2017 13:15
Drupal 8 - Adding custom Views query plugin which implements new aggregation method (SUM DISTINCT)
<?php
/**
* @file
* Contains \Drupal\my_module\Plugin\views\query\CustomSql.
*/
namespace Drupal\my_module\Plugin\views\query;
use Drupal\views\Plugin\views\query\Sql;
@reinis-kinkeris
reinis-kinkeris / my_module.module
Last active February 8, 2024 11:40
Drupal 8 - Example of adding dynamic js libraries which require locale
/**
* Implements hook_library_info_build().
*
* @return array
*/
function hook_library_info_build() {
$libraries = [];
/** @var \Drupal\Core\Language\LanguageManager $language_manager */
$language_manager = \Drupal::languageManager();
@reinis-kinkeris
reinis-kinkeris / special_terms.info.yml
Last active April 27, 2017 13:26
Drupal 8 - switching views display based on taxonomy vocabulary id
name: Special terms
type: module
description: Provides views display switching for special terms
core: 8.x
version: 8.x-0.1.0
package: Taxonomy
dependencies:
- views
- taxonomy
@reinis-kinkeris
reinis-kinkeris / my_module.token.inc
Last active January 23, 2017 16:58
Drupal 8 - Example to define global hard coded tokens
<?php
use Drupal\Core\Render\BubbleableMetadata;
/**
* @implements hook_token_info().
*/
function my_module_token_info() {
$type = [
'name' => t('Custom tokens'),
@reinis-kinkeris
reinis-kinkeris / CreatingDrupal8Site.md
Last active May 10, 2016 13:08 — forked from Deele/CreatingDrupal8Site.md
Creating Drupal 8 site