Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- use Drupal\node\Entity\Node;
- $message = "Click button to start Drupal 6 DB to Drupal 8 entityreference field conversion.";
- $field = "field_name";
- $target_field = "field_name";
- $node_type = "type_name";
- $host = "localhost";
- $user = "username";
- $pass = "thepassword";
- $db = "databasename";
- if (isset($_POST['convert'])) {
- $content_field = "content_".$field;
- // when taxonomy ref use instead: $field_value = $field."_value"
- $field_value = $field."_nid";
- mysql_connect($host, $user, $pass) or die("Could not connect: " . mysql_error());
- mysql_select_db($db);
- $nids = \Drupal::entityQuery('node')->condition('type', $node_type)->execute();
- foreach ($nids as $nid) {
- print($nid.' ');
- $node = Node::load($nid);
- $result = mysql_query("SELECT `".$field_value."` FROM `".$content_field."` WHERE `nid` = ".$nid);
- $references_array = array();
- while($row = mysql_fetch_array($result)){
- $references_array[] = array(
- 'target_id' => $row[0]
- );
- }
- $references_array = array_values(array_unique($references_array, SORT_REGULAR));
- $node->$target_field = $references_array;
- $node->save();
- }
- $message = "Conversion completed.";
- }
- ?>
- <br/><br/>
- <?php
- echo $message;
- ?>
- <br/><br/>
- <form method="post">
- <input type="submit" name="convert" value="convert">
- </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement