diff --git a/rules_link.views.inc b/rules_link.views.inc
index b670d14..78065ba 100644
--- a/rules_link.views.inc
+++ b/rules_link.views.inc
@@ -44,11 +44,16 @@ class views_handler_field_rules_link extends views_handler_field_entity {
     // the entities which have the correct bundle.
     if (empty($rules_link->settings['bundles']) || in_array($bundle, $rules_link->settings['bundles'])) {
       $output = rules_link_render_link($rules_link, $id, drupal_get_destination(), $parameters);
-      if ($this->options['rules_link']['rules_link_rewrite']) {
-        $output['#options']['html'] = TRUE;
-        $output['#title'] = strtr($this->options['rules_link']['rules_link_rewrite'], $this->get_render_tokens(''));
+      if (!empty($output)) {
+        $this->options['alter']['make_link'] = TRUE;
+        $this->options['alter']['path'] = $output['#href'];
+        $this->options['alter']['link_class'] .= implode(' ', $output['#attributes']['class']);
+        if ($this->options['rules_link']['rules_link_rewrite']) {
+          $output['#title'] = strtr($this->options['rules_link']['rules_link_rewrite'], $this->get_render_tokens(''));
+        }
+        return $output['#title'];
       }
-      return $output;
+      return '';
     }
   }
 
