Skip to main content
Drupal code

Main navigation

  • Home
  • Snippets
User account menu
  • Log in

Breadcrumb

  1. Home

views

By admin , 21 July, 2026

How to Stop Drupal Views from Automatically Scrolling to Content on AJAX Refresh

By default, when a user applies an exposed filter in a Drupal View with AJAX enabled, the page automatically jumps or scrolls directly to the top of the View content. While intended to help, this behavior can often disrupt the user experience.

If you want to keep your users exactly where they are without any forced movement, you can intercept and remove the scroll command before it reaches the browser. Implementing hook_ajax_render_alter() allows you to find the scrollTop command in the AJAX data array and unset it.

Tags

  • views
  • ajax
By admin , 18 October, 2025

Views: two contextual filters with "OR"

By default views is using "AND"

Tags

  • views
By admin , 7 October, 2025

Append custom field to views programmatically

/**
* Implements hook_views_pre_view().
*/
function MYMODULE_views_pre_view(ViewExecutable $view) {
 if ($view->id() === 'VIEWNAME') {
   $display_handler = $view->getDisplay();
   $fields = $display_handler->getOption('fields');
   $fields['blacklis

Tags

  • views
  • field
By admin , 7 October, 2025

Simple views custom field plugin

Add

/**
 * {@inheritdoc}
 */
public function query() {}

if you don't use any queries

Use 'views' table name ($data['views'])

Tags

  • views
  • field
By admin , 19 September, 2025

Add tab for views page if *.links.task.yml doesn't work

if ($route_name === 'view.commerce_carts.page_1') {
 $has_access = in_array('manager', $current_user->getRoles(), TRUE);
 $data['tabs'][0]['manager_user_canonical'] = [
   '#theme' => 'menu_local_task',
   '#link' =

Tags

  • views
  • tabs
By admin , 12 May, 2025

Views: permalink to comment

  1. Create a view: type: comment
  2. Add "content" relationship
  3. Add "Content: Link to Content" field, set "Output the URL as text" (hidden)
  4. Add "Comment ID" field (hidden)
  5. Add "Comment: Title" field

Tags

  • views
  • comment
By admin , 7 November, 2024

Create tab for views in user profile

my_custom.links.task.yml:

Tags

  • tabs
  • views
By admin , 7 November, 2024

Hide tab created by views

/**
* Implements hook_menu_local_tasks_alter().
*/
function MYMODULE_menu_local_tasks_alter(&$data, $route_name, RefinableCacheableDependencyInterface $cacheability) {
 $current_user = \Drupal::currentUser();
 if ($current_user->hasRole('administrator')
   || $current_user->hasRole(

Tags

  • tabs
  • views
By admin , 26 October, 2024

Views query: do not show rows where column value is unique.

/**
* Implements hook_views_query_alter().
*/
function MYMODULE_views_query_alter(ViewExecutable $view, QueryPluginBase $query) {
 // Do not show rows where CID is unique.
 if ($view->id() === 'MYVIEW_default') {
   $where_clause = 'cid IN (SELECT cid FRO

Tags

  • views
By admin , 16 October, 2024

Twig tweak: render views block with views title

{{ drupal_block('views_block:VIEWSNAME-block_1', {'label': true} ) }}

Tags

  • twig
  • views

Pagination

  • 1
  • Next page
views

Tags Cloud

dependency injection(21) form(20) views(16) 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) ajax(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) photoswipe(2) permissions(2) logger(2) vscode(2) suggestions(2) states(2) title(2) fieldset(2) mysql(2) weight(1) toolbar(1) webprofiler(1) 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