Normalize $templates[] in {$type}_template_hierarchy

This commit is contained in:
QWp6t
2016-12-10 06:06:00 -08:00
parent 945e3b76d7
commit 7af96ac311
2 changed files with 9 additions and 5 deletions

View File

@@ -31,9 +31,12 @@ add_filter('excerpt_more', function () {
/** /**
* Template Hierarchy should search for .blade.php files * Template Hierarchy should search for .blade.php files
*/ */
array_map(function ($tag) { array_map(function ($type) {
add_filter("{$tag}_template_hierarchy", function ($templates) { add_filter("{$type}_template_hierarchy", function ($templates) {
return array_merge(str_replace('.php', '.blade.php', $templates), $templates); return call_user_func_array('array_merge', array_map(function ($template) {
$normalizedTemplate = str_replace('.', '/', sage('blade')->normalizeViewPath($template));
return ["{$normalizedTemplate}.blade.php", "{$normalizedTemplate}.php"];
}, $templates));
}); });
}, [ }, [
'index', '404', 'archive', 'author', 'category', 'tag', 'taxonomy', 'date', 'home', 'index', '404', 'archive', 'author', 'category', 'tag', 'taxonomy', 'date', 'home',

View File

@@ -23,7 +23,7 @@ class BladeProvider extends Blade
*/ */
public function __construct($viewPaths, $cachePath, ContainerContract $container = null) public function __construct($viewPaths, $cachePath, ContainerContract $container = null)
{ {
parent::__construct($viewPaths, $cachePath, $container); parent::__construct((array) $viewPaths, $cachePath, $container);
$this->registerViewFinder(); $this->registerViewFinder();
} }
@@ -97,7 +97,8 @@ class BladeProvider extends Blade
$view = str_replace('\\', '/', $file); $view = str_replace('\\', '/', $file);
// Remove unnecessary parts of the path // Remove unnecessary parts of the path
$view = str_replace(array_merge((array) $this->viewPaths, ['.blade.php', '.php']), '', $view); $remove = array_merge($this->viewPaths, array_map('basename', $this->viewPaths), ['.blade.php', '.php']);
$view = str_replace($remove, '', $view);
// Remove leading slashes // Remove leading slashes
$view = ltrim($view, '/'); $view = ltrim($view, '/');