daandelange / k3-translations
翻译菜单替换,字段和部分为 Kirby 3
Requires
This package is not auto-updated.
Last update: 2024-09-20 18:54:15 UTC
README
Beta: 此插件最初是 k2-translations 到 Kirby 3 的移植。请注意,备受喜爱的“保存”字段状态尚未实现。目前,此插件提供翻译的还原和删除功能,并通过更高级的菜单替换了原生 Kirby 语言菜单,指示每种语言的翻译状态。
此插件增强了 Kirby 3 的内容页面的翻译处理。默认情况下,它替换了原始的语言切换为增强版本;但您也可以将其用作部分(未来用作字段以指示翻译状态)。
- 语言菜单明确显示是否存在翻译
- 红色:翻译的
.txt
文件不存在,该语言未翻译内容。 - 绿色:翻译的
.txt
文件存在,内容已翻译为该语言。
- 红色:翻译的
- 所有语言始终可见,以便更快地切换翻译。
- 对于所有非默认语言,您可以
- 删除翻译内容文件(不删除整个页面)。
- 与默认语言文件重新同步翻译(还原)。
要求
此插件与 Fiber 一起工作,因此您可能需要 Kirby 3.6。
尽管如此,它可能在较低的版本上也能工作。 (如果是这样,请报告!)
安装
下载
下载此存储库,提取它并将其拖放到您的 Kirby 安装中的插件文件夹。
site/plugins/k3-translations
Composer
如果您使用 Composer,则可以使用以下方式安装插件
composer require daandelange/k3-translations:~0.x.x-beta
注意:由于 k3-translations
仍然是 alpha,因此没有稳定的渠道,因此您需要指定不稳定版本。
Git 子模块
git submodule add https://github.com/daandelange/k3-translations.git site/plugins/translations
设置
替换 Kirby 的原生语言菜单
在您的网站项目中,您可以通过设置以下选项来自定义标题中的语言切换菜单
// Site /site/config/config.php return [ 'daandelange.translations' => [ 'header' => [ 'replaceKirbyLanguages' => false, // To disable replacing the native lang menu. Default = true. 'compactMode' => true, // To enable a more compact mode. Default = false. (alpha! only affects fields/sections) 'deletable' => false, // To disallow deleting a language. Default = true. 'revertable' => false, // To disallow reverting a language. Default = true. 'showEditLanguage' => false, // To hide the menu link to the panel language. Default = true. ], ], ];
翻译部分
将以下 section
添加到您的蓝图(可选)。
sections: translations: type: translations
高级使用
$page->isTranslated(string|bool|array $langCode = false)
返回页面内容翻译是否可用。
$langCode
:false
:对于当前语言true
:对于所有语言。'fr'
:对于特定语言。['fr', 'en']
:对于特定语言。
选项
以下选项适用于任何翻译部分或字段
- 不允许删除内容翻译
deletable: false # default = true
- 不允许将翻译还原为默认语言
revertable: false # default = true
- 使用更紧凑的布局
compactmode: true # default = false
- 设置自定义标签
label: Labelized! # default = [empty]
- 隐藏“在面板中编辑语言”菜单项
showEditLanguage: false # default = true
开发
此插件遵循 标准 Kirby PluginKit 结构,请参阅 他们的插件指南 了解更多有关使用它的详细信息。这些步骤是可选的,用于构建开发版本。
如果您使用修改后的 Kirby 文件夹结构,则可能需要修复 kirbyup.config.ts
(在 alias
部分中)中 kirby
文件夹的相对路径。
- Npm 要求(可选):
npm install -g kirbyup
- 设置:
cd /path/to/website/site/plugins/translations && npm install
- 开发时:
npm run dev
- 编译生产构建:
npm run build
- 更新依赖项:
npm update
- Composer安装和更新:
composer update
许可证
商业用途
此插件是免费的,但如果您将其用于商业项目,请考虑贡献改进或雇佣某人进行改进。
替代品/类似产品
- 如果您需要在语言之间同步特定字段,可以使用kirby3-language-sync插件。
- 要查看面板中您页面翻译状态的概览,可以使用k3-translation-status。
致谢
这是@Flokosiol的kirby-translations(适用于Kirby 2)的Kirby 3版本;感谢他启动了这个插件!:)
特别感谢所有贡献者以及原始的kirby2-translations贡献者!