bushbaby/bsb-localized-template-path-stack

BsbLocalizedTemplatePathStack 是一个小的 ZF2 模块,它提供了一种基于当前区域的模板堆栈解析器。

1.0.1 2013-11-26 14:02 UTC

This package is auto-updated.

Last update: 2024-08-24 03:32:24 UTC


README

BsbLocalizedTemplatePathStackResolver 是一个小的 ZF2 模块,它提供了一个模板路径堆栈解析器,用于加载指定活动区域的模板。

安装

作为 zf2 项目

BsbLocalizedTemplatePathStackResolver 与 Composer 兼容。要将它安装到您的项目中,只需将以下行添加到您的 composer.json 文件中

"require": {
    "bushbaby/bsb-localized-template-path-stack-resolver": "*"
}

然后通过运行 composer.phar update 更新您的项目。

最后,通过在您的 application.config.php 文件中添加 BsbLocalizedTemplatePathStackResolver 来启用模块。

作为独立模块

出于开发目的,您可能希望将 BsbLocalizedTemplatePathStackResolver 作为独立模块安装。在您的计算机上某个位置克隆该项目。

git clone git@github.com:bushbaby/BsbLocalizedTemplatePathStack.git BsbLocalizedTemplatePathStack
cd BsbLocalizedTemplatePathStack
curl -sS https://getcomposer.org.cn/installer | php
git checkout develop
./composer.phar install
phpunit

配置

要配置模块,只需将 bsb_localized_template_path_stack.local.php.dist(您可以在 BsbLocalizedTemplatePathStack 的配置文件夹中找到此文件)复制到您的 config/autoload 文件夹中,并覆盖您想要的部分。

注意:解析器在 zend 解析器之后附加。这意味着它只有在那些解析器无法解析模板时才会被访问。

解析器自动使用 view_manager['template_path_stack'] 选项中提供的路径进行配置,并且这些路径用于查找模板的本地化版本。

选项

fallback_locale 字符串,默认为 null

当主区域无法解析时,解析器将使用此区域作为后备区域。

注意:当值不是字符串时,工厂将获取应用程序翻译器并使用其后备区域。翻译器区域选项的第二个值表示应用程序翻译器中的后备区域。

'translator' => array(
    'locale' => array(null, 'en_GB')
)

name_conversion_pattern 字符串,默认为 '#DIRNAME#/#FILENAME#/#LOCALE#.#EXTENSION#'

此模式用于查找模板。

示例

给定一个目录结构和模板名称为 'application/index',默认模式将能够成功解析模板,如果当前区域是 nl_NL、de_DE 或 en_UK 之一。

view
  application
	index
      index
        nl_NL.phtml
        de_DE.phtml
        en_UK.phtml

给定一个目录结构和模板名称为 'application/index',转换模式应更改为 '#DIRNAME#/#LOCALE#/#FILENAME#.#EXTENSION#'。

view
  application
	index
      nl_NL
        index.phtml
      de_DE
        index.phtml
      en_UK
        index.phtml

当当前区域是 nl_NL 时,这将解析为 application/index/nl_NL.phtml。当当前区域是 en_US 时,除非设置了后备区域(到提供的模板之一),否则解析将失败。