function _node_mass_update_helper

Updates individual nodes when fewer than 10 are queued.

Parameters

\Drupal\node\NodeInterface $node: A node to update.

array $updates: Associative array of updates.

string $langcode: (optional) The language updates should be applied to. If none is specified all available languages are processed.

Return value

\Drupal\node\NodeInterface An updated node object.

See also

node_mass_update()

2 calls to _node_mass_update_helper()
node_mass_update in drupal/core/modules/node/node.admin.inc
Updates all nodes in the passed-in array with the passed-in field values.
_node_mass_update_batch_process in drupal/core/modules/node/node.admin.inc
Executes a batch operation for node_mass_update().

File

drupal/core/modules/node/node.admin.inc, line 100
Content administration and module settings user interface.

Code

function _node_mass_update_helper(NodeInterface $node, array $updates, $langcode = NULL) {
  $langcodes = isset($langcode) ? array(
    $langcode,
  ) : array_keys($node
    ->getTranslationLanguages());

  // For efficiency manually save the original node before applying any changes.
  $node->original = clone $node;
  foreach ($langcodes as $langcode) {
    foreach ($updates as $name => $value) {
      $node
        ->getTranslation($langcode, FALSE)->{$name} = $value;
    }
  }
  $node
    ->save();
  return $node;
}