Suporte » Plugins » Erro 500 em um add_action no woocommerce

  • Ei galera, tudo bem?

    Então, tudo começou com um site com um tema filho do Divi, que tem algumas peculiaridades.. Estava funcionando normalmente até atualizar pro woo 3.X+, aí começou a dar erro 500 no site todo.

    Bom, vamos lá, eu investiguei e descobri que a linha que tá dando pau é essa, no functions.php do tema filho:

    add_action( 'woocommerce_single_aldeia_btn', 'woocommerce_template_single_add_to_cart', 30 );

    Aí eu removi essa linha, e funcionou normalmente o site. O problema é que eles criaram um funil que integra com o Active Campaign, onde ao clicar no botão de “Garanta sua vaga” link: https://www.aldeiacoworking.com.br/cursos/curso-de-arduino-em-curitiba/ , você preenche um modal, feito com EasyModal, e ao “enviar” você envia os dados pra mulher de marketing e depois é mandado pro carrinho, com o produto adicionado.

    O problema é que, removendo aquela linha que tava dando pau, não direciona pro carrinho com o produto nele, na verdade nã direciona pra lugar nenhum, só fala: Redirecionando para o carrinho” e para.

    Aí é a questão, como resolver esse problema?

    • Este tópico foi modificado 6 anos, 9 meses atrás por pedrofilho.
Visualizando 8 respostas - 1 até 8 (de um total de 8)
  • Moderador Felipe Elia

    (@felipeelia)

    Uma boa ideia para saber mais sobre erros 500 é alterar, no seu wp-config.php, o valor das constantes WP_DEBUG no ambiente de desenvolvimento:

    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_DISPLAY', true );

    Assim ele passa a exibir na tela mais detalhes sobre o erro.

    Em algum lugar do tema deve ter um
    do_action( 'woocommerce_single_aldeia_btn' );
    ou coisa parecida. Quando essa linha é executada ele chama essa função woocommerce_template_single_add_to_cart que executa uma outra action. Dá uma olhada aqui.

    Enfim, você vai precisar ligar o debug para entender melhor o erro. Não esqueça de voltar aqui para dizer o que estava acontecendo, ok?

    Criador do tópico pedrofilho

    (@pedrofilho)

    O pastebin do erro

    https://pastebin.com/5XGW2Ucn

    Moderador Felipe Elia

    (@felipeelia)

    O que é que tem em volta da linha 83 de /app/public/wp-content/themes/divi-aldeia/functions.php? Se puder colocar em um pastebin, pode ajudar.

    Sobre o problema no BD, você pode olhar aqui.

    Criador do tópico pedrofilho

    (@pedrofilho)

    Pastebin do functions.php

    https://pastebin.com/dk114NDp

    Moderador Felipe Elia

    (@felipeelia)

    Estranho mesmo, @pedrofilho. A action pre_get_posts roda depois de plugins_loaded, então a função is_shop já deveria ser conhecida pelo fluxo de execução.

    Tenta comentar a linha 87 e ver se resolve os erros do log, mas parece que o erro 500 do começo do tópico é referente à outra coisa hein.

    Criador do tópico pedrofilho

    (@pedrofilho)

    Mas oq q rola que quando eu comento o add_action( 'woocommerce_single_aldeia_btn', 'woocommerce_template_single_add_to_cart', 30 ); funciona? Muito estranho isso

    Moderador Felipe Elia

    (@felipeelia)

    Achou onde tem o do_action( 'woocommerce_single_aldeia_btn' ); ?

    Criador do tópico pedrofilho

    (@pedrofilho)

    Então, eu demorei pra responder pq a parada é grande, vamos lá:

    Tem um plugin: https://br.wordpress.org/plugins/insert-php-code-snippet/ , ele tem uma “função” que faz: do_action( ‘woocommerce_single_aldeia_btn’ );

    Essa “função” é chamada dentro de um modal, que aparece quando o cara clica em “Garantir minha vaga, o plugin do modal é esse: https://br.wordpress.org/plugins/easy-modal/

    Aí, dentro do modal, ele chama isso aqui pra funcionar: <p>[activecampaign form=7] [xyz-ips snippet=”adiciona-curso-carrinho”]</p>

    E é assim que chama a função, alguma idéia do que tá rolando?

Visualizando 8 respostas - 1 até 8 (de um total de 8)
  • O tópico ‘Erro 500 em um add_action no woocommerce’ está fechado para novas respostas.