如何使用polylang在链接的自定义帖子之间保持指定字段不变

时间:2016-10-28 10:54:26

标签: wordpress custom-post-type multilingual polylang

我已在wordpress中的自定义主题上创建了一些自定义帖子,其中polylang plugin已激活。

翻译效果很好,但问题是我需要在翻译的帖子之间保持相同的指定内容。使用普通帖子,您可以停用媒体类型的翻译,但这不适用于自定义内容类型。

例如,如果我有两种语言,如英语和西班牙语,我会创建一个新的自定义英语帖子:

    $(function() {
      // Initialize form validation on the registration form.
      // It has the name attribute "registration"
      $("#ba-form-contact form").validate({
        // Specify validation rules
        rules: {
          // The key name on the left side is the name attribute
          // of an input field. Validation rules are defined
          // on the right side
          First_Name: "required",
          Surname: "required",
          email: {
            required: true,
            // Specify that email should be validated
            // by the built-in "email" rule
            email: true
          }
        },
        submitHandler: function() {
     jQuery.ajax({
     type: 'POST',
     url: '<?=$_SERVER['REQUEST_URI']?>',
     data: jQuery("#ba-form-contact form").serialize(),
     dataType: 'html'
     });
     return false;
     }
      });
    });
     </script>

我希望在西班牙语帖子上的一些内容已经填充了我已经写过的一些内容或上传到英文帖子中的内容(带有&#34; *&#34;),如:

[ENG POST]
TITLE
content1 *
content2
media1 *
media2

对于我使用CMB2 plugin的自定义帖子。

有优雅的方法吗?

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

获取正确的事件并找到原始的帖子ID应该允许您将之前的值设置为相应字段的默认值,但它只是理论,因为我从未真正尝试过。如果有效,请告诉我。

答案 2 :(得分: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_populatecf_media_to_populate将在没有翻译的情况下提供给所有语言,但cf_content_to_translatecf_media_to_translate将需要翻译。

使用wpml-config.xml,您可以管理

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

但是你不能在每个帖子的基础上做到这一点。

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