Skip to main content
Drupal code

Main navigation

  • Home
  • Snippets
User account menu
  • Log in
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
By admin , 2 August, 2023

Views with photoswipe slides not scroll

Needs to add view global css class "photoswipe-gallery"

Tags

  • photoswipe
  • views
By admin , 2 August, 2023

jQuery: find element with part of class

$("jdiv[class*='button_']").addClass('jivosite-button');

Tags

  • jquery
By admin , 30 July, 2023

jQuery: smooth scroll to ID

$('html, body').animate({
  scrollTop: $("#tour-desc").offset().top
}, 500);

Tags

  • jquery
By admin , 30 July, 2023

Twig Tweak render content block

{{ drupal_block('block_content:c80b81c4-e8ff-43d6-b9f9-6d547afb67c0') }}

Tags

  • twig

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(19) 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) jquery(4) service(4) roles(4) commerce(3) image(3) date(3) php(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) 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