WordPress WooCommerce Bug, fazendo com que os sites falhem
Um bug do WordPress está fazendo com que os sites de woocommerce exibam um erro fatal, travando sites de comércio eletrônico. O problema se origina de uma única linha de código. Uma solução alternativa foi criada. A equipe do WooCommerce está ciente do problema e está trabalhando na emissão de uma correção permanente na forma de um patch.
Sites de WooCommerce batendo
Alguém postou sobre o erro nos fóruns do WordPress.org e outros com o mesmo problema respondeu que eles estavam experimentando a mesma coisa. A maioria dos que responderam relatou que não haviam feito nada recentemente em seus sites, que haviam caído de repente.
A pessoa que relatou inicialmente o bug ofereceu uma solução alternativa para fazer com que os sites voltem e em funcionamento, uma edição de uma única linha de código no arquivo blockpatterns.php, que é um arquivo wooCommerce.
O arquivo está localizado aqui:
wp-content/plugins/woocommerce/src/Blocks/BlockPatterns.php
Outros relataram receber a mesma mensagem de erro fatal:
“Erro não descoberto: strpos (): argumento nº 1 ($ haystack) deve ser da string do tipo, null dada em /var/www/site/data/www/site.com.br/wp-content/plugins/woocommerce/src/blocks/blockpatterns.php on line 251”
Um dos comentaristas da discussão postou:
“A mesma questão aqui.
Ocorreu na versão 9.8.2 e a atualização para 9.8.3 não resolveu. O rebaixamento para 9.7.1 também não ajudou.
O problema aconteceu sem qualquer interação com plugins ou atualizações recentes. A substituição do código na linha 251 funcionou como uma solução alternativa temporária.
Precisamos encontrar uma solução mais estável até que a equipe do WooCommerce lança um patch oficial. ”
Outros relataram que receberam o erro depois de atualizar seus plugins, mas que reverter a atualização não resolveu o problema, enquanto outros relataram que não haviam feito nada antes de experimentar o acidente.
Alguém do apoio do WooCommerce respondeu para dizer que a equipe do WooCommerce está ciente do problema e está trabalhando para resolvê -lo:
“Obrigado por relatar isso. É um problema conhecido, e uma solução alternativa temporária foi compartilhada aqui: https://github.com/woocommerce/woocommerce/issues/57760#issuecomment-285410504
Você pode rastrear o progresso e as atualizações no tópico do github: https://github.com/wooCommerce/wooCommerce/issues/57760, pois a equipe está ciente e abordando ativamente. ”
Correção rápida postada na discussão do github
Alguém postou uma solução rápida no repositório oficial do GitHub que resolverá o problema por enquanto:
Se seus sites estão inativos – esta é a correção rápida para você hoje
Para obter sites que foram emparecidos pela atualização com a mensagem de erro:
Fatal error: Uncaught TypeError: strpos(): Argument #1 ($haystack) must be of type string, null given in /var/www/html/wp-content/plugins/woocommerce/src/Blocks/BlockPatterns.php:251é adicionar ?? ”Na linha 251:
if ( strpos( $category('title') ?? '', $prefix ) !== false ) {Certifique -se de limpar qualquer camada de cache do WordPress que você possa ter depois de aplicar essa alteração.
Pode ser útil para aqueles que vêm aqui procurando uma correção rápida para que os sites ao vivo funcionem novamente hoje e comprem algum tempo para a equipe do WooCommerce preparar o #57759.
O mesmo repositório WooCommerce Github também tem esta nota:
“Alguns sites podem ver um erro fatal em torno da classe BlockPatterns.php, com o site não carregando. Essa se deveu uma resposta ruim do repositório de padrões Woo. Uma correção foi implantada para o repositório, mas certos sites ainda podem ter um valor de cache ruim”.
Eles também escreveram:
“O problema foi corrigido do lado da fonte de cache, mas certos sites foram deixados com um valor de cache ruim, lançaremos atualizações de patches para corrigir isso.”
Problema extra no WPengine
Alguém escreveu que continuou lutando com o local do motor WP depois de implementar uma correção:
“Estou lutando para implementar a correção no mecanismo WP. Presumo que seja um problema de cache, mas enviando a correção e limpar todos os caches não está funcionando. Existe uma etapa adicional que estou perdendo? Até agora, apenas restaurando um backup corrigido.”
A resposta foi que o mecanismo WP possui vários caches que precisam ser atualizados:
“Isso porque o WPengine é uma plataforma, não um servidor da web normal – existem muitas camadas que você pode precisar limpar, incluindo o cache da página e os caches de verniz. Veja: https://wpengine.com/support/cache/”
Leia o relatório inicial no fórum de suporte do WordPress:
Erro fatal blockpatterns.php: 251
Leia a discussão do GitHub:
Erro fatal em torno de strpos em blockpatterns.php #57760
Imagem em destaque de Shutterstock/Kues