happyr/translation-bundle
最新稳定版本:0.4.3
Composer 安装命令:
composer require happyr/translation-bundle
包简介
Integrate Symfony with translations SaaS like http://localise.biz
README 文档
README
DEPRECATED: Use php-translation/symfony-bundle
This bundle has been deprecated in favor of php-tranlation/symfony-bundle. We took all features form this bundle and put them (and many more) at php-translation.
The bundle will still live here forever but no new features or bugfixes will be merged. Forking or moving this repo to new maintainers will not make any sense since that is pretty much what we already done in php-translation.
This bundle helps you to integrate with a third party translation service. The bundle has been focused to integrate to the Loco service. If you want to know how Happyr work with this bundle you should check out this blog post.
The key features of this bundle is:
- Easy to download all translations from
- Support for multiple projects
- Create new translation assets by the Symfony WebProfiler
- Edit, flag and synchronize the translation via the Symfony WebProfiler
- Auto upload missing translations to SaaS
Usage
To download all translations from Loco, simply run:
php app/console happyr:translation:download
When you have added new translations you may submit these to your translation SaaS by the WebProfiler toolbar.
You may also change translations and flag them from the same WebProfiler page.
When you want to fetch new translations from your SaaS you should run the synchronize command. This command will keep your current placeholders from missing translations.
php app/console happyr:translation:sync
Install
Install the bundle with composer require happyr/translation-bundle
You do also need to choose what library to use when you are sending http messages. Consult the php-http/client-implementation virtual package to find adapters to use. For more information about virtual packages please refer to Httplug. Example:
composer require php-http/guzzle6-adapter
Enable the bundle in your kernel:
<?php
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new Happyr\TranslationBundle\HappyrTranslationBundle(),
);
}
This bundle require you to register a service for the HttpClient and the MessageFactory and then set service name to the config like below. The easiest way of doing this is with the HttplugBundle.
happyr_translation: httplug_client: 'httplug.client' httplug_message_factory: 'httplug.message_factory'
Configure
If you have one Loco project per domain you may configure the bundle like this:
# /app/config/config.yml happyr_translation: locales: ['en','sv','fr','es'] projects: messages: api_key: 'foobar' navigation: api_key: 'bazbar'
If you just doing one project and have tags for all your translation domains you may use this configuration:
# /app/config/config.yml happyr_translation: locales: ['en','sv','fr','es'] domains: ['messages', 'navigation'] projects: acme: api_key: 'foobar'
You do also need to configure a development route.
# /app/config/routing_dev.yml _happyr_translation: resource: '@HappyrTranslationBundle/Resources/config/routing_dev.yml'
Default configuration
happyr_translation: httplug_client: 'httplug.client' httplug_message_factory: 'httplug.message_factory' file_extension: 'xlf' # could be 'json', 'mo', 'php', 'po', 'yml' and many more locales: [] domains: [] translation_service: 'loco' target_dir: '%kernel.root_dir%/Resources/translations' auto_add_assets: false allow_edit: true
TODO
- The new page in the WebProfiler needs some design and nice icons.
- The error handling is not always the best.
- The Loco class
- In the HttpAdapters
- In the javascript
Credits
This bundle is both inspired by and is using some of the code from @damienalexandre / JoliCode and from Cliff Odijk's (@cmodijk) LocoBundle.
I would also thank Tim Whitlock (@timwhitlock) for creating Loco.
happyr/translation-bundle 适用场景与选型建议
happyr/translation-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 88.84k 次下载、GitHub Stars 达 52, 最近一次更新时间为 2015 年 08 月 24 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 happyr/translation-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 happyr/translation-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 88.84k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 52
- 点击次数: 30
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-08-24

