You are here

protected function HelpSearch::removeItemsFromIndex in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/help_topics/src/Plugin/Search/HelpSearch.php \Drupal\help_topics\Plugin\Search\HelpSearch::removeItemsFromIndex()
  2. 10 core/modules/help_topics/src/Plugin/Search/HelpSearch.php \Drupal\help_topics\Plugin\Search\HelpSearch::removeItemsFromIndex()

Removes an item or items from the search index.

Parameters

int|int[] $sids: Search ID (sid) of item or items to remove.

2 calls to HelpSearch::removeItemsFromIndex()
HelpSearch::updateIndex in core/modules/help_topics/src/Plugin/Search/HelpSearch.php
Updates the search index for this plugin.
HelpSearch::updateTopicList in core/modules/help_topics/src/Plugin/Search/HelpSearch.php
Rebuilds the database table containing topics to be indexed.

File

core/modules/help_topics/src/Plugin/Search/HelpSearch.php, line 494

Class

HelpSearch
Handles searching for help using the Search module index.

Namespace

Drupal\help_topics\Plugin\Search

Code

protected function removeItemsFromIndex($sids) {
  $sids = (array) $sids;

  // Remove items from our table in batches of 100, to avoid problems
  // with having too many placeholders in database queries.
  foreach (array_chunk($sids, 100) as $this_list) {
    $this->database
      ->delete('help_search_items')
      ->condition('sid', $this_list, 'IN')
      ->execute();
  }

  // Remove items from the search tables individually, as there is no bulk
  // function to delete items from the search index.
  foreach ($sids as $sid) {
    $this->searchIndex
      ->clear($this
      ->getType(), $sid);
  }
}