Updates individual nodes when fewer than 10 are queued.
\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.
\Drupal\node\NodeInterface An updated node object.
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;
}