hncore/language-switcher

Backpack 语言切换器

2.0.2 2024-08-30 02:03 UTC

This package is auto-updated.

Last update: 2024-09-30 02:31:49 UTC


README

Latest Version on Packagist Total Downloads The Whole Fruit Manifesto

此包为使用 Backpack for Laravel 的项目添加了语言切换下拉菜单。

预览

演示

现在就试试,在我们的在线演示中 这里

安装

  1. 在你的 Laravel 项目中,安装此包
composer require hncore/language-switcher

# optional: publish the config file
php artisan vendor:publish --provider="Backpack\LanguageSwitcher\LanguageSwitcherServiceProvider" --tag="config"
  1. 将中间件添加到 hncore 配置 config/hncore/base.php
'middleware_class' => [
    ...
    \Backpack\LanguageSwitcher\Http\Middleware\LanguageSwitcherMiddleware::class,
],

可选地,你可以在 app/Http/Kernel.php 中将中间件添加到 webapi 或其他你可能想使用语言切换器的中间件组。

  1. 将下拉视图添加到 topbar_right_content.blade.php 或你需要的任何地方
@include('hncore.language-switcher::language-switcher')
  1. 为了添加你应用程序的可用语言,你需要在 hncore crud 配置文件 config/hncore/crud.php 中启用它们
'locales' => [
    'en' => 'English',
    'pt' => 'Portuguese',
    'ro' => 'Romanian',
    ...

在那里你可以设置应用程序使用的 locales 数组。请注意,应用程序的默认语言应保持在 config.app.localeconfig.app.fallback_locale 中。

用法

我能否显示/隐藏主要标签或旗帜?

是的!
你可以通过向组件发送特殊参数来实现

@include('hncore.language-switcher::LanguageSwitcher', [
    'flags' => true, // true by default, change it to hide flags
    'main_label' => false, // false by default, it may also be a string, for instance "Language"
])

我能否在 hncore/admin 范围之外使用此包?

是的!
如果你想在应用程序的其他部分使用语言切换器,你可以在 app/Http/Kernel.php 中添加中间件。例如,你可以为整个 web 中间件组或 api 启用此功能。

protected $middlewareGroups = [
    'web' => [
        ...
        \Backpack\LanguageSwitcher\Http\Middleware\LanguageSwitcherMiddleware::class,
    ],

我能否自定义端点路由?

是的! 你可以通过发布配置文件 php artisan vendor:publish --provider="Backpack\LanguageSwitcher\LanguageSwitcherServiceProvider" --tag="config" 来实现。在那里你可以完全禁用包路由并注册自己的路由,或更改与显示 URL 相关的一些行为。

请注意,如果你覆盖了路由,请谨慎使用限速或其他安全措施来保护端点。默认包路由使用:'throttle:60,1'

备注

此包使用 outhebox/blade-flags 来获取表示语言/区域的语言旗帜。

如果你发现任何问题,如缺失或错误的旗帜,可以直接向维护者报告。

安全

如果你发现任何与安全相关的问题,请通过电子邮件 cristian.tabacitu@hncoreforlaravel.com 报告,而不是使用问题跟踪器。

鸣谢

许可证

该项目是在 MIT 许可证下发布的,因此你可以在任何 Backpack & Laravel 项目上安装它。有关更多信息,请参阅 许可证文件