- Status
- Aberto
- Relatado para
- WPML Multilingual CMS 4.6.4
- Tags de tópico
- Bug
Visão geral do problema
Atualizar para o WPML 4.6.4 em um servidor com o mecanismo de cache OpCache pode resultar em um erro fatal inesperado ao usar seu back-end. Especificamente ao usar um pipeline de implantação.
2023/06/22 02:36:16 [error] 359706#359706: *507646 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught TypeError: WPML\User\UsersByCapsRepository::__construct(): Argument #2 ($languagePairs) must be of type WPML\User\LanguagePairs\ILanguagePairs, WPML_Language_Pair_Records given, called in .../wp-content/plugins/sitepress-multilingual-cms/classes/container/class-config.php on line 63 and defined in .../wp-content/plugins/sitepress-multilingual-cms/classes/user/UsersByCapsRepository.php:18
Solução alternativa
Certifique-se de ter um backup completo do seu site antes de prosseguir.
Opção 1
Reiniciar o seu servidor PHP deve corrigir esse problema. Entre em contato com o provedor do seu servidor e solicite a reinicialização do serviço PHP-FPM.
Opção 2
1. Verifique se os novos arquivos estão presentes- Abra ../wp-content/plugins/sitepress-multilingual-cms/classes/language/class-wpml-language-pair-records.php
- Verifique se o arquivo está no local correto. Ele deve conter este código na linha 14:
class WPML_Language_Pair_Records implements ILanguagePairs {Em vez de:
class WPML_Language_Pair_Records { - Se esse não for o caso, isso indicaria um problema no processo de implantação e você precisará verificá-lo.
Como alternativa, você pode invalidar o seu OPCache para esse arquivo específico.
- Execute isto a partir de um script servido por HTTP (não CLI/SSH):
opcache_invalidate( '/wp-content/plugins/sitepress-multilingual-cms/classes/language/class-wpml-language-pair-records.php', true);
- Abra a sua pasta /wp-content/plugins/sitepress-multilingual-cms/classes/.
- Procure por uma pasta /Language/ restante com inicial maiúscula.
- Se esse for o caso, remova o diretório
/Language/e certifique-se de que o diretório/language/tenha os arquivos da versão WPML 4.6.6.
Se o problema persistir, entre em contato com o suporte do WPML. Seria muito útil se você nos enviasse o conteúdo do seu phpinfo().