search_api-8.x-1.15/src/Plugin/search_api/display/ViewsBlock.php

src/Plugin/search_api/display/ViewsBlock.php
<?php

namespace Drupal\search_api\Plugin\search_api\display;

/**
 * Represents a Views block display.
 *
 * @SearchApiDisplay(
 *   id = "views_block",
 *   views_display_type = "block",
 *   deriver = "Drupal\search_api\Plugin\search_api\display\ViewsDisplayDeriver"
 * )
 */
class ViewsBlock extends ViewsDisplayBase {

  /**
   * {@inheritdoc}
   */
  public function isRenderedInCurrentRequest() {
    // There can be more than one block rendering the display. If any block is
    // rendered, we return TRUE.
    $plugin_id = 'views_block:' . $this->pluginDefinition['view_id'] . '-' . $this->pluginDefinition['view_display'];
    $blocks = $this->getEntityTypeManager()
      ->getStorage('block')
      ->loadByProperties(['plugin' => $plugin_id]);
    foreach ($blocks as $block) {
      if ($block->access('view')) {
        return TRUE;
      }
    }

    return FALSE;
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc