diff --git a/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc b/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc
index 6278a25..86f4a33 100644
--- a/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc
+++ b/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc
@@ -188,3 +188,41 @@ function _views_slideshow_cycle_preprocess_views_slideshow_cycle_main_frame_row_
     $vars['classes_array'][] = $row_class;
   }
 }
+
+/**
+ * Implements hook_preprocess_views_slideshow_pager_fields()
+ */
+function views_slideshow_cycle_preprocess_views_slideshow_pager_fields(&$vars) {
+  $slide_count = count($vars['view']->result);
+  $items_per_slide = $vars['view']->style_options['views_slideshow_cycle']['items_per_slide'];
+
+  if ($vars['view']->style_options['slideshow_type'] == 'views_slideshow_cycle') {
+    $slide_count = $slide_count / $items_per_slide;
+    $slide_count = ceil($slide_count);
+  }
+
+  $vars['rendered_field_items'] = '';
+  if (empty($vars['settings']['hide_on_single_slide']) || $slide_count > 1) {
+    foreach ($vars['view']->result as $count => $node) {
+      if ($count < $slide_count) {
+        $rendered_fields = '';
+        foreach ($vars['settings']['views_slideshow_pager_fields_fields'] as $field => $use) {
+          if ($use !== 0 && is_object($vars['view']->field[$field])) {
+            $rendered_fields .= theme(views_theme_functions('views_slideshow_pager_field_field', $vars['view'], $vars['view']->display[$vars['view']->current_display]), array('view' => $vars['view'], 'field' => $field, 'count' => $count));
+          }
+        }
+        $vars['rendered_field_items'] .= theme(views_theme_functions('views_slideshow_pager_field_item', $vars['view'], $vars['view']->display[$vars['view']->current_display]), array('vss_id' => $vars['vss_id'], 'item' => $rendered_fields, 'count' => $count, 'location' => $vars['location']));
+      }
+    }
+  }
+}
+
+/**
+ * Implement hook_preprocess_views_slideshow_slide_counter()
+ */
+function views_slideshow_cycle_preprocess_views_slideshow_slide_counter(&$vars) {
+  if ($vars['view']->style_options['slideshow_type'] == 'views_slideshow_cycle') {
+    $vars['slide_count'] = $vars['slide_count'] / $vars['view']->style_options['views_slideshow_cycle']['items_per_slide'];
+    $vars['slide_count'] = ceil($vars['slide_count']);
+  }
+}
\ No newline at end of file
diff --git a/theme/views-slideshow-slide-counter.tpl.php b/theme/views-slideshow-slide-counter.tpl.php
index 56de96f..f4961d9 100644
--- a/theme/views-slideshow-slide-counter.tpl.php
+++ b/theme/views-slideshow-slide-counter.tpl.php
@@ -1,3 +1,3 @@
 <div id="views_slideshow_slide_counter_<?php print $variables['vss_id']; ?>" class="<?php print $classes; ?>">
-  <span class="num">1</span> <?php print t('of'); ?> <span class="total"><?php print count($rows); ?></span>
+  <span class="num">1</span> <?php print t('of'); ?> <span class="total"><?php print $slide_count; ?></span>
 </div>
diff --git a/theme/views_slideshow.theme.inc b/theme/views_slideshow.theme.inc
index c98cd91..163b3c9 100644
--- a/theme/views_slideshow.theme.inc
+++ b/theme/views_slideshow.theme.inc
@@ -345,4 +345,5 @@ function theme_views_slideshow_slide_counter_widget_render($vars) {
  */
 function _views_slideshow_preprocess_views_slideshow_slide_counter(&$vars) {
   $vars['classes_array'][] = 'views_slideshow_slide_counter';
+  $vars['slide_count'] = count($vars['rows']);
 }
