WPML
Status
Resolvido

Visão geral do problema

Para alguns tipos de campo do ACF, não é possível duplicar o conteúdo corretamente.

Solução alternativa

Se você estiver usando qualquer um dos campos listados na seção Descrição completa deste post, você deve adicionar este snippet ao arquivo functions.php do seu tema para que a duplicação funcione corretamente.

function wpml_fix_acf_duplication( $value_to_filter, $target_language, $meta_data ) {
  // Field names should be placed into following array.
  $fields = array(
     'test_taxonomy' => 'some_taxonomy_name',
     'test_image' => 'attachment',
     'test_file' => 'attachment',
     'test_gallery' => 'attachment',
     'test_post_object' => 'post',
     'test_page_link' => 'page'
  );

  if ( array_key_exists( $meta_data['key'], $fields ) ) {
		$value = maybe_unserialize( $value_to_filter );

		if ( is_array( $value ) ) {
			// If custom field value contain array of IDs to translate, usually used for gallery and taxonomy field types.
			$translated_ids = array();

			foreach ( $value as $v ) {
				$translated_ids[] = apply_filters( 'wpml_object_id', $v, $fields[ $meta_data['key'] ], true, $target_language );
			}

			return maybe_serialize( $translated_ids );
		} else {
			// If custom field value contain single ID to translate, usually used for image and file field types.
			$translated_id = apply_filters( 'wpml_object_id', $value, $fields[ $meta_data['key'] ], true, $target_language );

			return $translated_id;
		}
	}

	return $value_to_filter;
}
add_filter( 'wpml_duplicate_generic_string', 'wpml_fix_acf_duplication', 999, 3 );

NOTA: Você deve substituir os pares key => value do array pelos valores adequados.

Substitua as chaves como: “test_taxonomy”, “test_image”, “test_file”, etc., pelos nomes dos campos do seu site, conforme mostrado no exemplo da imagem a seguir. imagem01
Substitua os valores como: “some_taxonomy_name”, “attachment”, post, page, etc., de acordo.
Este é o tipo de elemento ao qual o ID pertence. Pode ser post, page, attachment, {custom post type key}, nav_menu, nav_menu_item, category, post_tag, {custom taxonomy key}

Para saber mais, confira nossa documentação de hook aqui.

Todos os problemas conhecidos →