Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function _my_module_get_entityreferences_settings() {
- $child_ids = $field_names = $settings = array();
- // Get all entityreference field names
- $query = db_select('field_config', 'f');
- $query->fields('f', array('field_name'));
- $query->condition('f.type', 'entityreference');
- $query->distinct();
- $rows = $query->execute();
- foreach ($rows as $row) {
- $field_name = $row->field_name;
- $field_names[] = $field_name;
- }
- // Loop all entityreference fields. Get all child and parent Ids
- foreach ($field_names as $field_name) {
- $table = 'field_data_' . $field_name;
- $target_id = $field_name . '_target_id';
- $query = db_select($table, 'f');
- $query->fields('f', array('entity_id', $target_id, 'entity_type', 'bundle'));
- $query->distinct();
- $rows = $query->execute();
- foreach ($rows as $row) {
- $settings[$row->entity_type][$row->bundle][$field_name] = $field_name;
- $child_ids[$row->{$target_id}] = array(
- 'id' => $row->{$target_id},
- 'parent' => $row->entity_id,
- );
- }
- }
- return array(
- 'childs' => $child_ids,
- 'settings' => $settings,
- );
- }
- $field = field_info_field($field_name);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement