Pular a navegação

Este é o fórum de suporte técnico para o WPML — o plugin de WordPress multilíngue.

Todos podem ler, mas apenas clientes do WPML podem postar aqui. A equipe do WPML responde no fórum 6 dias por semana, 22 horas por dia.

Nenhum atendente de suporte está disponível para trabalhar hoje no fórum Portuguese. Fique à vontade para abrir tickets e iremos tratar deles assim que estivermos online. Obrigado pela compreensão.

Este tópico contém 15 respostas, tem 3 vozes.

Última atualização: 5-elements-4-webU 1 ano, 9 mes atrás.

Assistido por: Mateus Getulio.

Autor Posts
junho 21, 2022 em 8:24 am #11506203

5-elements-4-webU

Bom dia,

Em continuação do ticket https://wpml.org/pt-br/forums/topic/atualizar-produtos-variaveis-sem-mexer-nas-variacoes/ venho pedir que disponibilizem novamente uma versão de teste para que vos consiga mostrar todos os passos a realizar, para replicar a situação.

Obrigado.

junho 22, 2022 em 12:38 pm #11520013

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Obrigado pelo seu contato e bem vindo ao nosso fórum de suporte!

Adicionarei na minha próxima resposta privada um link para o login automático da nova Sandbox que gerei. Como meu colega pediu anteriormente, por favor nos deixe saber dessas informações:

1 - Quais são as requisições feitas?

2 - Existe algum código personalizado que interfere no processo, se sim, qual?

3 - Melhor ainda se você pudesse replicar o problema inteiro, mostrando as requisições feitas aos endpoints Rest API, para isso você pode gravar o processo e providenciar a URL do screencast feito. Você pode usar esta ferramenta: link oculto;

Aguardo seu retorno. Obrigado!

Cumprimentos,
Mateus.

junho 23, 2022 em 2:15 pm #11530925

5-elements-4-webU

Boa tarde,

Segue o vídeo tal como solicitado.

link oculto

Se pretenderem poderei enviar também a collection do postman. Caso pretendam digam-me por favor como a posso enviar.

Obrigado.

junho 23, 2022 em 8:57 pm #11533339

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Muito obrigado por seus esforços em replicar o problema na Sandbox!

Sim, seria muito útil ter também a collection do postman. Marcarei sua próxima resposta como privada, para que possa compartilhar o arquivo de forma segura.

Fico no aguardo. Grato!

Cumprimentos,
Mateus.

junho 27, 2022 em 2:08 pm #11552161

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Muito obrigado por nos fornecer as requisições.

Eu as verifiquei mais profundamente, mas até agora não consegui encontrar uma correção para esse comportamento. Pedi aos meus colegas para dar uma olhada neste problema para ver se há alguma coisa que possamos corrigir.

Volto aqui assim que tiver atualizações sobre o caso (o que não deve demorar muito).

Obrigado,
Mateus.

junho 27, 2022 em 6:42 pm #11554089

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Encaminhei este tíquete para nosso 2º nível de suporte, onde nossos especialistas de 2º nível analisarão mais profundamente esse problema e tentarão encontrar uma solução.

Retornarei assim que obtiver uma resposta deles.

Atenciosamente,
Mateus

junho 30, 2022 em 1:35 pm #11577071

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Obrigado por sua paciência!

Após uma investigação detalhada, não conseguimos reproduzir o problema. Assim que adicionamos a tradução do produto as variações são sincronizadas e não há necessidade de enviar novas solicitações de criação de variações.

O que encontramos nas solicitações é que os produtos tem um ID de atributo diferente:

"attributes\": [\r\n        {\r\n            \"id\": 4,\r\n            \"option\": \"en_01_01\"\r\n        }\r\n    ]\r\n}

Você pode ver que a solicitação EN está usando ID 4, e a solicitação PT usa ID 2, o que significa dois atributos diferentes. Por acaso, você está tentando ter atributos diferentes do original? Se sim, então receio que não é possível. O WPML traduz os produtos fornecendo uma maneira de editar strings traduzíveis, mas você não pode alterar o preço, os atributos ou as variações que estão em sincronia com o original.

Aparte disto, não conseguimos localizar onde se adicionam os atributos. Na solicitação original de criação do produto, não há parâmetro de atributos.

Também não é necessário usar SKUs diferentes, você pode manter a coluna SKU em branco e o WPML sincronizará isso para tradução. A tradução não pode ter um SKU diferente porque não é um novo produto, é apenas a tradução.

Como solução alternativa, você pode omitir o parâmetro "translation_of" e isso criará um produto independente no idioma selecionado. Assim, será possível manter os dados desejados. E você pode também colocar um link na descrição do produto ou por hooks, para que os usuários possam trocar de idioma, já que o alternador de idioma do WPML não os vinculará.

Por favor revise essas informações e nos deixe saber se elas são claras para você e resolvem a questão. Aguardo sua resposta, obrigado!

Cumprimentos,
Mateus.

junho 30, 2022 em 4:14 pm #11579131

5-elements-4-webU

Pelo vídeo é possível observar que o ID dos atributos utilizado é sempre o 4.

Eu quero utilizar SKUs diferentes e específicos por língua e variação, mas não é isso que está em questão. Continuam a dar respostas que não se adequam ao pedido de resolução.

Vou tentar resumir mais uma vez:
- Os produtos estão a ser criados corretamente em todas as línguas;
- As variações estão a ser criadas corretamente em todas as línguas;
- As variações estão a ser atualizadas corretamente em todas as línguas;
- Os produtos na língua principal estão a ser atualizados corretamente;
- Os produtos nas línguas que não a principal são atualizados corretamente mas as variações são eliminadas, algo que não é suposto acontecer.

Reforçando a ideia, na atualização de produtos nas línguas que não a principal, as variações estão a ser eliminadas. O que pretendo é que o produto seja alterado mas não estrague as variações.

Se não conseguem replicar o problema, digam-me por favor como é que fazem os passos que enviei no video e as variações em EN não são eliminadas, ou seja como é que atualizam o produto EN mantendo as variações todas.

junho 30, 2022 em 8:20 pm #11580761

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Agradeço pelos esclarecimentos e peço perdão por esse vai e vem.

Encaminhei outra vez a questão para nossos especialistas de segundo nível e em breve lhe trarei atualizações sobre o caso. Grato por sua paciência!

Cumprimentos,
Mateus.

julho 1, 2022 em 8:45 pm #11587381

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Analisando o arquivo que você forneceu: link oculto, podemos pesquisar por \"id\": 4 e \"id\": 2 e encontraremos dois IDs diferentes.

Basicamente o que está acontecendo aqui é:

1 - Você criou um produto em português com 4 termos: pt_01_01, pt_01_02, en_01_01, en_01_02
2 - Criou duas variações para o produto português pt_01_01, pt_01_02
3 - Criou o produto traduzido em inglês com dois termos en_01_01, en_01_02
4 - Duas variações criadas en_01_01, en_01_02
5- Atualizou o produto traduzido

Na etapa 3, mais dois termos pt_01_01, pt_01_02 são adicionados pelo WCML porque estão em sincronia com o original e duas variações traduzidas são criadas pelo WCML.

No Passo 4, você adiciona mais duas variações para se tornar 4.

Na etapa 5, assim que você atualizar o produto, o WCML irá remover as variações criadas (en_01_01, en_01_02) e deixará as variações traduzidas criadas pelo WCML pt_01_01, pt_01_02.

Como explicado anteriormente, você não pode ter o termo A e o termo B para o produto original, e em seguida, Termo C e Termo D para o produto traduzido.

Idealmente, as etapas 4 e 5 não são necessárias assim que você adiciona o produto traduzido. O WCML adiciona as variações traduzidas dos termos traduzidos. Se você precisar ter variações diferentes no produto traduzido, não vincule o produto como expliquei acima. Se você precisar atualizar a descrição da variação, deverá atualizá-la por ID.

Espero que essa explicação faça sentido agora. Por favor me deixe saber se ainda restam dúvidas.

Grato,
Mateus.

julho 4, 2022 em 10:40 pm #11600585

5-elements-4-webU

O que está a acontecer não é o que dizem.

Ponto 3 - Se não introduzir as variações de outras línguas, apenas tenho as variações PT, logo tenho obrigatoriamente que adicionar variações noutras línguas.

Ponto 5 - O WPML não deixa variações traduzidas, apenas deixa as variações originais sem tradução.

"Idealmente, as etapas 4 e 5 não são necessárias assim que você adiciona o produto traduzido. O WCML adiciona as variações traduzidas dos termos traduzidos." - O WPML não tem como saber a informação das traduções, têm sempre que ser adicionadas.

Mais uma vez refiro que o problema apenas está na atualização do produto e não na atualização das variações.

Deixo algumas questões que caso tenha resposta, consigo dar a volta à situação.

1 - Como posso então ter as traduções das variações com diferentes SKUs por língua?

2 - Como posso desativar o sincronismo das variações? (pode ser através de código)

PS: não digam que não é possível que já consegui impedir que outras traduções fossem afetadas, não encontrei foi a forma de impedir que as variações do próprio produto fossem apagadas. E acho que não faz sentido ter que andar a procurar no código pois vocês facilmente conseguem responder a isso.

julho 6, 2022 em 8:38 am #11611471

Mateus Getulio
Supporter

Idiomas: Inglês (English ) Português (Português )

Fuso horário: America/Sao_Paulo (GMT-03:00)

Olá,

Obrigado pela sua resposta.

Por gentileza poderíamos continuar a comunicação desse ticket em inglês, a fim de que nosso especialista de segundo nível possa se comunicar com você? Por favor nos deixe saber se é possível.

Grato desde já!

julho 6, 2022 em 8:53 am #11611651

5-elements-4-webU

No problem.

I have no problem with any variations create/update/delete. I only have problems when I update the product in other language that not my main language.

When I update the product in my main language, everything works and the variations aren't affected.
Example: Main language PT, other languages EN, FR and ES.

When I update EN product, the variations of EN, FR and ES are deleted.

So I need answer to these questions:

1 - How can I have different translations of variations without problems in product updates via API?

2 - How can I deactivate the variations sync? (It can be done by code)

PS: I know it's possible because I already found a way to prevent that the other languages are affected. When I update the EN product only the variations of that product are affected, but they still are deleted.
I know that's a way to prevent that but it will take too much effort to detect it in the code, you can detect it easily.

Thank you.

julho 6, 2022 em 4:24 pm #11616577

Sumit
Supporter

Idiomas: Inglês (English )

Fuso horário: Asia/Kolkata (GMT+05:30)

Hi,

I am Sumit from 2nd tier support. I am looking into this issue.

In the previous reply, you asked a couple of questions. I will quote and answer them.

>If I don't introduce the variations of other languages, I only have the PT variations, so I must add variations in other languages.

You have translated each term the same in all languages. The term "pt_01_01" is translated as "pt_01_01" in English. If you translate "pt_01_01" to "pt_01_01_English" or anything in English you will have translated English term assigned automatically to the translated product so you don't need to add English terms separately. I hope it is clear now.

>Point 5 - WPML does not keep translated variations, it just leaves the original variations untranslated.

Same here you can't find the original or translated terms because all are the same in all languages.

>Once again I mention that the problem is only with the product update and not with the variations update.

Yes we know this. This is not the problem this is the feature of WCML. WCML sync the variations on the original product update.

>How can I then have the translations of the variations with different SKUs per language?

Sorry, you can not. The SKU is a unique value. And it is unique for each product. But translation is not a unique product it is a translation of an original product having the same price, variations, stock, attributes, etc. We copy the SKU code to translation so that can not be different from the original product.

>How can I disable the syncing of variations? (it can be through code)

I am afraid there is no such feature at the moment and it is not advisable to do so.
Please take a look at our support policy https://wpml.org/purchase/support-policy/ we can not help with custom work. For this, you can contact our custom work contactors https://wpml.org/contractors/

As an alternative, If you need to have different variations on the translated product please do not link the product i.e. you can omit the "translation_of" parameter when creating the translated product and this will create an independent product in the selected language. Thus you can keep whatever data you want.
And you can place a link in the product description or by hooks so users can switch languages because the WPML language switcher won't link them.

I hope it helps.

Thanks

julho 9, 2022 em 8:42 am #11634777

5-elements-4-webU

So I can have products with different sku's (https://wpml.org/forums/topic/different-sku-for-different-languages/) but I cannot have variations with different skus, and I cannot have variations in different languages.
If I try to create a variation for each language, edit or remove it. The system works but if I edit the product, only the variations of the main language remains and the others are deleted.

For me it isn't a feature, it is a big mess between bug and limitation.

My issue isn't resolved, but I don't need this kind of assistance.

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.