Skip to main content
Drupal code

Main navigation

  • Home
  • Snippets
User account menu
  • Log in

Breadcrumb

  1. Home

Snippets

By admin , 29 September, 2023

Import config from file via hook_update

/**
* Add settings to site config.
*/
function MYMODULE_update_9001() {
 $path = \Drupal::service('extension.list.module')->getPath('MYMODULE') .

Tags

  • config
By admin , 14 September, 2023

Drush generate UUID

drush php-eval "echo \Drupal::service('uuid')->generate();"

Tags

  • drush
  • uuid
By admin , 9 September, 2023

Node custom access

/**
* Implements hook_node_access().
*/
function MYMODULE_node_access(NodeInterface $node, $op, $account) {
 if ($op === "view" && $node->id() === '1116') {
   $roles = $account->getRoles();
   if (in_array('authentic

Tags

  • node
  • access
By admin , 30 August, 2023

View drupal.org module maintainers

https://www.drupal.org/project/views_load_more/maintainers.json

Tags

  • drupal.org
By admin , 21 August, 2023

Phpunit make screenshot

$this->createScreenshot(\Drupal::root() . '/sites/simpletest/screenshot.jpg');
$this->assertFileExists(\Drupal::root() . '/sites/simpletest/screenshot.jpg');

Tags

  • tests
  • phpunit
By admin , 18 August, 2023

Inject Renderer service into form

use Drupal\Core\Render\RendererInterface;

/**
 * Defines an interface for turning a render array into a string.
 */
protected RendererInterface $renderer;

/**
 * The form constructor.
 *
 * @param \Drupal\Core\Render\RendererInterface $renderer
 *   The renderer.
 */

Tags

  • form
  • renderer
  • dependency injection
By admin , 18 August, 2023

Show drupal message in form ajax callback

$this->messenger()->addMessage($this->t('System tag can be added only automatically'), 'error', TRUE);
$message = [
 '#theme' => 'status_messages',
 '#message_list' => $this->messenger()->deleteAll(),
];
$messages = \Drupal::service(

Tags

  • form
  • ajax
By admin , 17 August, 2023

Remove array item by value

$flat_tags = array_diff($flat_tags, [$favorites_tag->id()]);

Tags

  • php
By admin , 17 August, 2023

Flat multidimensional array of entity id's

$tags = $form_state->getValue('tags');
$flat_tags = [];
array_walk_recursive($tags, static function ($a) use (&$flat_tags) {
  $flat_tags[] = $a;
});

// Or simple:

$flat_tags = array_column($tags, 'target_id');

Tags

  • entity
  • php
  • array
By admin , 8 August, 2023

Inject cache_tags.invalidator service to form

use Drupal\Core\Cache\CacheTagsInvalidator;

...

/**
 * The cache tags invalidator.
 */
protected CacheTagsInvalidator $cacheTagsInvalidator;

/**
 * Constructs a form object.
 *
 * @param \Drupal\Core\Cache\CacheTagsInvalidator $cache_tags_invalidator
 *   The cache 

Tags

  • dependency injection
  • form
  • cache

Pagination

  • First page
  • Previous page
  • …
  • Page 9
  • Page 10
  • Page 11
  • Page 12
  • Page 13
  • Page 14
  • Page 15
  • Page 16
  • Page 17
  • …
  • Next page
  • Last page

Tags Cloud

dependency injection(21) form(20) views(15) drush(15) twig(13) field(12) preprocess(10) comment(7) render(7) node(7) translate(7) tabs(7) controller(6) phpstorm(6) file(6) phpunit(5) entity(5) config(5) entityTypeManager(5) routes(5) database(4) php(4) jquery(4) service(4) roles(4) commerce(3) image(3) date(3) entityQuery(3) cache(3) slick(3) block(3) custom entity(3) javascript(3) user(3) taxonomy(3) guzzle(3) redirect(3) url(3) docker(2) git(2) request(2) phpstan(2) event(2) template(2) module(2) schema(2) migration(2) libraries(2) access(2) drupal.org(2) tests(2) ajax(2) photoswipe(2) permissions(2) logger(2) vscode(2) suggestions(2) states(2) title(2) fieldset(2) mysql(2) validation(1) Constraint(1) CKEditor(1) phpcs(1) hook(1) ci-cd(1) gitlab(1) docksal(1) revision(1) filter(1) attribute(1) service provider(1) csv(1) PHPDoc(1) table(1) eslint(1) array(1) deprecation(1) theme(1) errors(1) wsod(1) settings.php(1) watchdog(1) pager(1) widget(1) file.usage(1) queue(1) exif(1) imagemagick(1) media(1) uuid(1) renderer(1) exposed form(1) page manager(1) transliteration(1) random(1) development(1) mail(1) webform(1) register(1) textarea(1) label(1) input(1) batch(1) import(1) messenger(1)
RSS feed
Powered by Drupal