2

I've create some custom posts on my customized theme in wordpress, in which the polylang plugin is activated.

The translation works well, but the problem is that I need that specified contents remain the same between translated posts. With the normal posts you can deactivate the translation for the media type, but this will not apply for custom content type.

For example, if I got two languages, like English and Spanish, and I create a new custom english post:

[ENG POST]
TITLE
content1 *
content2
media1 *
media2

I'd want that on the spanish post some of the contents to be already populated with some of the contents that I've already written\uploaded in the english post (the ones with the "*" ), like:

[SP POST]
-empty-
content1
-empty-
media1
-empty-

For the custom posts I'm using the CMB2 plugin.

Is there an elegant way to do this?

4

3 回答 3

0

从来没有做过这样的事情,但据我所知,polylang 会创建另一个帖子,并且在加载新语言表单时,会完全重新加载 CMB2 字段,从而触发所有相关事件。

进入正确的事件并找到原始帖子 ID 应该允许您将先前的值设置为相应字段的默认值,但这只是理论,因为我从未真正尝试过。让我知道它是否有效。

于 2016-11-09T11:12:08.347 回答
0

据我所知, WPML非常适合多语言网站,如果您愿意,可以尝试一下... WordPress 的插件总是有问题...。

于 2016-11-04T22:34:54.753 回答
0

如果您使用 CMB2 的自定义字段来创建自定义帖子类型内容的那些部分,那么这里或多或少是一种实现目标的优雅、直接的方法。

创建wpml-config.xml文件(这很不言自明)

<wpml-config>
    <custom-fields>
        <custom-field action="copy">cf_content_to_populate</custom-field>
        <custom-field action="copy">cf_media_to_populate</custom-field>
        <custom-field action="translate">cf_content_to_translate</custom-field>
        <custom-field action="translate">cf_media_to_translate</custom-field>
    </custom-fields>
</wpml-config>

并将其保存到您使用的主题的根目录中。

cf_content_to_populate并且cf_media_to_populate将在所有语言中提供,无需翻译,但cf_content_to_translate需要cf_media_to_translate翻译。

使用wpml-config.xml您可以管理复制和/或翻译

  • 指定的自定义字段;
  • 指定的自定义帖子类型;
  • 指定的分类法;
  • 将管理文本指定为自定义插件或自定义主题选项等。

但是您不能开箱即用地在每个帖子的基础上执行此操作。

关于wpml-config.xml 文件的 Polylang官方文档。

于 2017-11-04T14:58:02.253 回答