WPML
Status
Aberto
Relatado para
WPML Multilingual CMS 4.6.13
Tags de tópico
Bug

Visão geral do problema

Campos personalizados com chaves complexas (por exemplo, contendo caracteres especiais como pipes |) podem não ser traduzidos corretamente no WPML. Isso faz com que os valores traduzidos sejam armazenados como arrays serializados em vez de strings simples, causando problemas na exibição dos valores traduzidos dos campos personalizados.

Solução alternativa

Por favor, certifique-se de ter um backup completo do seu site antes de prosseguir.


  • Abra o arquivo …/sitepress-multilingual-cms/classes/translation-jobs/class-wpml-element-translation-package.php.

  • Procure a linha 260.

  • Substitua:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . $field_name . '-?#', '', $field_id_string, 1 );
    	}

  • Por:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . preg_quote($field_name) . '-?#', '', $field_id_string, 1 );
    	}

Todos os problemas conhecidos →