Combine hook content back in the .module file
This commit is contained in:
parent
18b6f3a7c5
commit
2f24cf7235
|
@ -1,20 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @file
|
|
||||||
* Entity type build hooks.
|
|
||||||
*/
|
|
||||||
|
|
||||||
declare(strict_types=1);
|
|
||||||
|
|
||||||
use Drupal\discoverable_entity_bundle_classes\Storage\Node\NodeStorage;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implements hook_entity_type_build().
|
|
||||||
*/
|
|
||||||
function opdavies_blog_entity_type_build(array &$entityTypes): void {
|
|
||||||
/** @var \Drupal\Core\Entity\EntityTypeInterface[] $entityTypes */
|
|
||||||
if (isset($entityTypes['node'])) {
|
|
||||||
$entityTypes['node']->setStorageClass(NodeStorage::class);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @file
|
|
||||||
* Node links alter hooks.
|
|
||||||
*/
|
|
||||||
|
|
||||||
declare(strict_types=1);
|
|
||||||
|
|
||||||
use Drupal\Core\Url;
|
|
||||||
use Drupal\node\NodeInterface;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implements hook_node_links_alter().
|
|
||||||
*/
|
|
||||||
function opdavies_blog_node_links_alter(array &$links, NodeInterface $node): void {
|
|
||||||
if (!method_exists($node, 'getExternalLink')) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($link = $node->getExternalLink()) {
|
|
||||||
$links['node']['#links']['node-readmore']['url'] = Url::fromUri($link['uri']);
|
|
||||||
$links['node']['#links']['node-readmore']['title'] = t('Read more<span class="visually-hidden"> about @title</span> (<span class="visually-hidden">on </span>@domain)', [
|
|
||||||
'@domain' => $link['title'],
|
|
||||||
'@title' => $node->label(),
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,18 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @file
|
|
||||||
* Block preprocess hooks.
|
|
||||||
*/
|
|
||||||
|
|
||||||
declare(strict_types=1);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implements hook_preprocess_HOOK().
|
|
||||||
*/
|
|
||||||
function opdavies_blog_preprocess_block(array &$variables): void {
|
|
||||||
// Add the 'markup' class to blocks.
|
|
||||||
if (in_array($variables['plugin_id'], ['views_block:featured_blog_posts-block_1'])) {
|
|
||||||
$variables['attributes']['class'][] = 'markup';
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @file
|
|
||||||
* Node preprocess functions.
|
|
||||||
*/
|
|
||||||
|
|
||||||
declare(strict_types=1);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implements hook_preprocess_HOOK().
|
|
||||||
*/
|
|
||||||
function opdavies_blog_preprocess_node(array &$variables): void {
|
|
||||||
if (!method_exists($variables['node'], 'getExternalLink')) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($link = $variables['node']->getExternalLink()) {
|
|
||||||
$variables['url'] = $link['uri'];
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -2,17 +2,59 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file
|
* @file
|
||||||
* Custom module.
|
* Custom blog code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
declare(strict_types=1);
|
use Drupal\Core\Url;
|
||||||
|
use Drupal\discoverable_entity_bundle_classes\Storage\Node\NodeStorage;
|
||||||
|
use Drupal\node\NodeInterface;
|
||||||
|
|
||||||
use Symfony\Component\Finder\Finder;
|
/**
|
||||||
|
* Implements hook_entity_type_build().
|
||||||
$finder = Finder::create()
|
*/
|
||||||
->in(__DIR__ . DIRECTORY_SEPARATOR . 'hooks')
|
function opdavies_blog_entity_type_build(array &$entityTypes): void {
|
||||||
->name('/.[php|inc]$/');
|
/** @var \Drupal\Core\Entity\EntityTypeInterface[] $entityTypes */
|
||||||
|
if (isset($entityTypes['node'])) {
|
||||||
foreach ($finder as $file) {
|
$entityTypes['node']->setStorageClass(NodeStorage::class);
|
||||||
include $file->getPathname();
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implements hook_node_links_alter().
|
||||||
|
*/
|
||||||
|
function opdavies_blog_node_links_alter(array &$links, NodeInterface $node): void {
|
||||||
|
if (!method_exists($node, 'getExternalLink')) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($link = $node->getExternalLink()) {
|
||||||
|
$links['node']['#links']['node-readmore']['url'] = Url::fromUri($link['uri']);
|
||||||
|
$links['node']['#links']['node-readmore']['title'] = t('Read more<span class="visually-hidden"> about @title</span> (<span class="visually-hidden">on </span>@domain)', [
|
||||||
|
'@domain' => $link['title'],
|
||||||
|
'@title' => $node->label(),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implements hook_preprocess_HOOK().
|
||||||
|
*/
|
||||||
|
function opdavies_blog_preprocess_block(array &$variables): void {
|
||||||
|
// Add the 'markup' class to blocks.
|
||||||
|
if (in_array($variables['plugin_id'], ['views_block:featured_blog_posts-block_1'])) {
|
||||||
|
$variables['attributes']['class'][] = 'markup';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implements hook_preprocess_HOOK().
|
||||||
|
*/
|
||||||
|
function opdavies_blog_preprocess_node(array &$variables): void {
|
||||||
|
if (!method_exists($variables['node'], 'getExternalLink')) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($link = $variables['node']->getExternalLink()) {
|
||||||
|
$variables['url'] = $link['uri'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue