My content type has a node reference field that allows users to enter an unlimited amount of nodes in. I need to programmatically change what comes first in this list.
Using the code below I'm able to obtain the data from the field.
$node = \Drupal::entityTypeManager()->getStorage('node')->load($function); $focus = $node->field_focus_area->getValue(); And it produces:
array(2) { [0]=> array(1) { ["target_id"]=> string(2) "31" } [1]=> array(1) { ["target_id"]=> string(3) "161" } } In order to rearrange it I tried doing
$newOrder[0] = ['target_id'=> 161]; $newOrder[1] = ['target_id'=> 31]; $focus->field_focus_area->rekey($newOrder); But it was then when I realized that rekey was a protected function so I could use it. How would I programmatically rearrange the deltas (if that's what you'd call it) of an entity reference field programmatically?