atukai / theme-middleware
支持 Zend Expressive 的主题
0.1.2
2017-07-20 21:24 UTC
Requires
- php: ^7.0
- psr/container: ^1.0
- psr/http-message: ^1.0
- zendframework/zend-expressive-template: ^1.0.1
- zendframework/zend-stdlib: ^2.7 || ^3.0
README
支持主题中间件,允许在主题间切换。它通常是为 Zend Expressive 设计的。
安装
composer require atukai/theme-middleware
用法
Zend Expressive:
从 ConfigProvider.php 包含配置。建议使用 [Expressive 配置管理器] (https://github.com/mtymek/expressive-config-manager)
$configManager = new ConfigManager([ ..., \At\Theme\ConfigProvider::class, ]);
创建主题文件夹。
./themes
配置您的设置。
'themes' => [ 'theme_paths' => [ __DIR__ . '/../themes/' ], ];
其他框架:
您应该实现 Zend\Expressive\Template\TemplateRendererInterface
并将其放入容器中的 TemplateRendererInterface::class
键下
解析器
它使用解析器来检测当前应使用的主题名称。默认情况下使用 At\Theme\Resolver\ConfigurationResolver
来获取配置中指定的主题。您可以添加一个或多个解析器并设置优先级。
'themes' => [ 'paths' => [ __DIR__ . '/../themes/' ], 'default_theme' => 'default', 'resolvers' => [ \At\Theme\Resolver\HttpRequestResolver::class => 20, ], ];
资源
'themes' => [ 'paths' => [ __DIR__ . '/../themes/' ], 'default_theme' => 'default', 'resolvers' => [ \At\Theme\Resolver\HttpRequestResolver::class => 20, ], 'assets' => [ 'paths' => [__DIR__ . '/../themes/default/assets'], 'cache_dir' => __DIR__ . '/../public' ] ];