Durante o ano passado, a equipa WooCommerce esteve trabalhar num projeto que tem o potencial de aumentar significativamente a velocidade das lojas WooCommerce. Armazenamento de pedidos de alto desempenho ou HPOS simplifica a estrutura da base de dados e optimiza o desempenho, melhorando a forma como os dados das encomendas são geridos. Antes do HPOS, os pedidos do WooCommerce eram armazenados nas mesmas tabelas do banco de dados que os posts e as páginas, o que pode causar problemas de desempenho ao processar grandes volumes de pedidos. A partir de agora, os pedidos serão transferidos para tabelas dedicadas, otimizadas para o armazenamento de dados de pedidos.
Naturalmente, essa modificação exigirá que os dados do pedido sejam transferidos da estrutura de tabela existente para a nova estrutura de tabela HPOS. O HPOS é atualmente oferecido como um funcionalidade opt-in e ainda não está liberado para uso em produção, no entanto, é altamente recomendável investigar a compatibilidade do seu site com o HPOS em um site de teste separado. O WooCommerce planeja habilitar o HPOS por padrão no WooCommerce 8.
Desenvolvedores de plugins WooCommerce, tais como FooSales terá também de implementar várias alterações que garantirão a compatibilidade com o HPOS e com o armazenamento de dados antigos. Estamos a temos o prazer de confirmar que, a partir de FooSales versão 1.34.1 (14 de junho de 2023) O FooSales é totalmente compatível com o HPOS. Não há alterações visíveis nas aplicações FooSales ou nos plugins FooSales, no entanto, quando decidir mudar o seu site para o HPOS, todas as funcionalidades do FooSales funcionarão como previsto.
Muitos programadores de plug-ins ou temas da comunidade WooCommerce manifestaram preocupações relativamente à implementação da compatibilidade com o HPOS e à extensão do trabalho necessário. Por isso, para ajudar a aliviar as suas preocupações, aqui está o feedback do nosso principal programador que, esperamos, proporcionará alguma paz de espírito:
"Inicialmente, a ideia de refactorizar a nossa base de código para acomodar o HPOS era intimidante. Assim que começámos a seguir o Documentação do desenvolvedor do WooCommerce tornou-se evidente que (pelo menos para a nossa base de código) a atualização não era assim tão complicada. A documentação contém uma expressão regular muito útil que lhe permite ver rapidamente todos os locais do seu código onde poderá ser necessária alguma refacção. Para nós, uma das maiores diferenças estava na obtenção e atualização dos metadados das encomendas, que acediam diretamente à tabela 'wp_posts' utilizando as funções WordPress. Tudo o que tivemos de fazer nesses casos foi utilizar as funções de encomenda WooCommerce correspondentes, que têm compatibilidade retroactiva para os utilizadores que ainda não fizeram a mudança para HPOS. Para além dos metadados das encomendas, houve algumas acções e filtros que tiveram de ser modificados para funcionarem com as novas páginas de listagem de encomendas e de visualização de edição. No total, demorámos apenas alguns dias a atualizar e testar as alterações necessárias para suportar o armazenamento de encomendas de alto desempenho WooCommerce." - Etienne, desenvolvedor líder do FooSales
Estamos muito entusiasmados com o que o HPOS significa para os comerciantes e esperamos ouvir como ele melhorou o desempenho das lojas dos comerciantes. Dito isso, recomendamos testar o HPOS completamente em um ambiente de teste primeiro e garantir que todos os plug-ins e serviços usados pela sua loja sejam compatíveis com o HPOS.