将django CMS内容发送到第三方翻译提供商进行翻译。
项目描述
django CMS Translations 允许将django CMS中创建的内容传输到外部翻译工具,进行处理并发送回来。它会自动从翻译中创建必要的插件结构。
此插件与 Divio Cloud 兼容,并且可在 django CMS Marketplace 上轻松安装。
贡献
这是一个开源项目。我们非常乐意接受您以问题报告和拉取请求的形式的反馈。在提交您的拉取请求之前,请参阅我们的贡献指南。
文档
有关其他依赖项,请参阅 setup.py 文件中的 REQUIREMENTS
Python 2.7, 3.4或更高版本
Django 1.11或更高版本
django CMS 3.5或更高版本
安装
手动安装
运行 pip install djangocms-translations
将 djangocms_translations 添加到您的 INSTALLED_APPS
运行 python manage.py migrate djangocms_translations
配置
当内容需要翻译时,源页面在翻译内容成功写回之前不得进行编辑。
翻译系统需要在内容中找到与启动过程时完全相同的插件。如果任何插件缺失,将导致错误,并需要重新启动过程。
这会影响页面上的所有插件,包括文本、图像和其他插件类型。
当内容正在翻译时,对源页面上的插件进行任何更改都可能导致写回失败。
单页翻译
如果您需要翻译单个页面,请转到“翻译”>“翻译此页面”,前提是存在一个或多个要翻译的语言。在该步骤中显示的语言代表当前网站可用和配置的语言。不要过于担心,您将在下一步中能够自定义选择。
配置翻译请求 与批量翻译请求不同,单个翻译请求允许您在多站点设置中从一个源页面翻译到另一个页面。以下选项可用:
源CMS页面 这是您需要选择的源页面。它代表多站点设置中的站点以及应选择进行翻译的页面。
源语言 此步骤始终显示系统中的完全配置的语言。您需要提前检查页面树,选择您想要的页面和语言。如果源页面未配置或没有内容,此步骤可能会导致错误。
目标CMS页面 这是您需要选择的目标页面。界面与源CMS页面相同。确保目标CMS页面已配置且没有内容非常重要。如果目标页面已有内容,则新翻译的内容将附加到当前内容上。翻译系统永远不会替换/删除内容。
目标语言 这与源语言的行为相同。同样,请确保从目标源选择正确的语言。如果是另一个网站,您需要提前检查该语言是否可用,否则您将收到错误。
提供者后端 选择翻译服务。目前仅支持Supertext。
一旦发送翻译请求,状态将适用,如概述中所述。如果有问题,您可能需要与翻译提供商联系以了解其状态。
批量翻译
与单页翻译功能不同,批量翻译仅允许在您已选择的当前站点上进行翻译。以下选项可用:
源语言 与单个翻译请求类似,您需要选择源语言。请注意,系统中的所有配置语言选项都将显示,而不仅仅是当前站点的选项。因此,您需要了解当前站点有哪些语言,并选择正确的源语言。
目标语言 与单个翻译请求类似;您需要选择目标语言。同样,系统中的所有配置语言选项都可用,您需要了解当前站点有哪些语言,并选择正确的源语言。目标语言也需要配置,否则即使只有一个页面配置不正确,完整的批量翻译也将失败。
提供者后端 与单个翻译请求相同。
设置
使用DJANGOCMS_TRANSLATIONS_CONF,您可以定义应从任何给定插件发送哪些数据,以控制不必要的数据不传输。
DJANGOCMS_TRANSLATIONS_CONF = { 'TextPlugin': {'fields': ['body']}, 'LinkPlugin': {'fields': ['name']}, 'AudioFilePlugin': {'fields': ['text_title', 'text_description']}, 'AudioFolderPlugin': {'fields': []}, 'AudioTrackPlugin': {'fields': ['label']}, 'AudioPlayerPlugin': {'fields': ['label']}, 'FilePlugin': {'fields': ['link_title']}, 'PicturePlugin': {'fields': ['caption_text']}, 'VideoTrackPlugin': {'fields': ['label']}, 'VideoSourcePlugin': {'fields': ['text_title', 'text_description']}, 'VideoPlayerPlugin': {'fields': ['label']}, }
将DJANGOCMS_TRANSLATIONS_USE_STAGING设置为True,您可以发送数据到预发布环境而不是生产环境。
使用 DJANGOCMS_TRANSLATIONS_BULK_BATCH_SIZE,您可以定义要传输给翻译提供商的批次大小。默认值是 100。
运行测试
您可以通过执行以下操作来运行测试:
virtualenv env source env/bin/activate pip install -r tests/requirements.txt python setup.py test
项目详情
djangocms-translations-1.4.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 733a7ac7989dffb8988a56a5ecba69f31700467d922d2e26f5eca86cbdb954e3 |
|
MD5 | c92ad9284614999b8e8f539a87aa16d9 |
|
BLAKE2b-256 | 78a65081b85a537c93bbdc14abf9495d75651bd1527731662dfd00c3084d98b6 |