Index: branches/release-35/lib/MT/Blog.pm
===================================================================
--- branches/release-35/lib/MT/Blog.pm (revision 1949)
+++ branches/release-35/lib/MT/Blog.pm (revision 1971)
@@ -385,11 +385,11 @@
     my $path = $param->{path} || '';
     my @path;
-    if ($path =~ m!^/!) {
+    if ($path =~ s!^/!!) {
         # absolute
-        @path = split /\//, $path;
+        @path = split q{/}, $path;
     } else {
         # relative
         push @path, MT->config('IncludesDir');
-        push @path, split /\//, $path;
+        push @path, split q{/}, $path;
     }
     return ($filename, @path);
Index: branches/release-35/lib/MT/Template/ContextHandlers.pm
===================================================================
--- branches/release-35/lib/MT/Template/ContextHandlers.pm (revision 1958)
+++ branches/release-35/lib/MT/Template/ContextHandlers.pm (revision 1971)
@@ -2370,5 +2370,5 @@
             $use_ssi = 0;
         } else {
-            my $extra_path = $arg->{cache_key} ? $arg->{cache_key}
+            my $extra_path = ($arg->{cache_key} || $arg->{key}) ? $arg->{cache_key} || $arg->{key}
                 : $tmpl->cache_path ? $tmpl->cache_path
                     : '';
@@ -2387,9 +2387,10 @@
       && ( ( $arg->{cache} && $arg->{cache} > 0 )
         || $arg->{cache_key}
+        || $arg->{key}
         || ( exists $arg->{ttl} )
         || $tmpl->use_cache ) ? 1 : 0;
     my $cache_key =
-        $arg->{cache_key}
-      ? $arg->{cache_key}
+        ($arg->{cache_key} || $arg->{key})
+      ? $arg->{cache_key} || $arg->{key}
       : 'blog::' . $blog_id . '::template_' . $type . '::' . $tmpl_name;
     my $ttl =
