diff --git apachesolr.module apachesolr.module
index 356c77e..b3bb668 100644
--- apachesolr.module
+++ apachesolr.module
@@ -1541,15 +1541,15 @@ function apachesolr_cck_fields() {
       $cck_field_instances = content_field_instance_read();
       // A single default mapping for all text fields using optionwidgets.
       $mappings['text'] = array(
-        'optionwidgets_select' => array('callback' => '', 'index_type' => 'string'),
-        'optionwidgets_buttons' => array('callback' => '', 'index_type' => 'string'),
-        'optionwidgets_onoff' => array('callback' => '', 'index_type' => 'string'),
+        'optionwidgets_select' => array('callback' => '', 'index_type' => 'string', 'facets' => TRUE),
+        'optionwidgets_buttons' => array('callback' => '', 'index_type' => 'string', 'facets' => TRUE),
+        'optionwidgets_onoff' => array('callback' => '', 'index_type' => 'string', 'facets' => TRUE),
       );
       // A single default mapping for all integer fields using optionwidgets.
       $mappings['number_integer'] = array(
-        'optionwidgets_select' => array('callback' => '', 'index_type' => 'sint'),
-        'optionwidgets_buttons' => array('callback' => '', 'index_type' => 'sint'),
-        'optionwidgets_onoff' => array('callback' => '', 'index_type' => 'sint'),
+        'optionwidgets_select' => array('callback' => '', 'index_type' => 'sint', 'facets' => TRUE),
+        'optionwidgets_buttons' => array('callback' => '', 'index_type' => 'sint', 'facets' => TRUE),
+        'optionwidgets_onoff' => array('callback' => '', 'index_type' => 'sint', 'facets' => TRUE),
       );
       // A field-specific mapping would look like:
       // $mappings['per-field']['field_model_name'] = array('callback' => '', 'index_type' => 'string');
diff --git apachesolr_search.module apachesolr_search.module
index ce219bb..ab6b925 100644
--- apachesolr_search.module
+++ apachesolr_search.module
@@ -534,12 +534,14 @@ function apachesolr_search_apachesolr_facets() {
   $fields = apachesolr_cck_fields();
   if ($fields) {
     foreach ($fields as $name => $field) {
-      // $delta can only be 32 chars, and the CCK field name may be this
-      // long also, so we cannot add anything to it.
-      $facets[$field['field_name']] = array(
-        'info' => t('Apache Solr Search: Filter by @field', array('@field' => $field['widget']['label'])),
-        'facet_field' => apachesolr_index_key($field),
-      );
+      if ($field['facets']) {
+        // $delta can only be 32 chars, and the CCK field name may be this
+        // long also, so we cannot add anything to it.
+        $facets[$field['field_name']] = array(
+          'info' => t('Apache Solr Search: Filter by @field', array('@field' => $field['widget']['label'])),
+          'facet_field' => apachesolr_index_key($field),
+        );
+      }
     }
   }
   return $facets;
