Support

Account

Home Forums General Issues get list of field groups for location rule Reply To: get list of field groups for location rule

  • Ok – I think I’m on the right track:

    function get_cpt_field_groups($cpt) {
      $result = array();
      $acf_field_group_manager = new acf_field_group();
          $all_field_groups = $acf_field_group_manager->get_field_groups(array());
          foreach($all_field_groups as $field_group) {
            $group_locations = $acf_field_group_manager->get_location( '', $field_group['id'] );
            foreach($group_locations as $group_location_rules) {
              foreach($group_location_rules as $rule) {
                if($rule['param'] == 'post_type' && $rule['operator'] == '==' && $rule['value'] == $cpt) {              
                  $result[$field_group['id']]['meta'] = $field_group;
                  $result[$field_group['id']]['fields'] = $acf_field_group_manager->get_fields( '', $field_group['id']);
                }
              }
            }
          }
      return $result;
    }