- 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 ); }