WPML
Status
Resolvido
Relatado para
WPML Multilingual CMS 3.6.3
Resolvido em
3.7.0

Visão geral do problema

Para resolver certos problemas com plugins de cache, não estamos mais definindo o cookie de idioma no front-end quando o usuário não está logado. Isso está causando alguns problemas com certos temas e plugins que fazem chamadas AJAX no front-end.

Solução alternativa

O problema foi resolvido no WPML 3.7.0.

Para ativar as informações de idioma nas chamadas AJAX do front-end, vá para WPML > Idiomas e role a tela para baixo até ver “Filtragem de idioma para operações AJAX”.

Lá você encontrará a opção “Armazenar um cookie de idioma para suportar a filtragem de idioma para AJAX”:


A seguir está a solução alternativa para o WPML 3.6.3:

Se você estiver enfrentando esse problema e não estiver usando nenhum plugin de cache, poderá usar a seguinte solução alternativa:


  1. Edite o arquivo sitepress-multilingual-cms/classes/utilities/class-wpml-cookie.php.

  2. Altere a função set_cookie

de:
public function set_cookie( $name, $value, $expires, $path, $domain ) {
   if ( $this->should_set_cookie() ) {
      setcookie( $name, $value, $expires, $path, $domain );
   }
}

Para:

public function set_cookie( $name, $value, $expires, $path, $domain ) {
   setcookie( $name, $value, $expires, $path, $domain );
}

Todos os problemas conhecidos →