Existe alguma maneira de integrar o mailchimp simple (uma entrada de email) ao AJAX, para que não haja atualização de página nem redirecionamento para a página padrão do mailchimp.
Esta solução não funciona O jQuery Ajax POST não funciona com o MailChimp
obrigado
javascript
ajax
forms
newsletter
mailchimp
alexndm
fonte
fonte
Respostas:
Você não precisa de uma chave de API, tudo o que você precisa fazer é inserir o formulário padrão gerado pelo mailchimp em seu código (personalizar a aparência conforme necessário) e no atributo "action" do formulário, alterar
post?u=
parapost-json?u=
e depois no final da ação do formulário anexar&c=?
para solucionar qualquer problema entre domínios. Também é importante observar que, quando você envia o formulário, deve usar GET em vez de POST.Sua tag de formulário será mais ou menos assim por padrão:
alterá-lo para algo parecido com isto
O Mail Chimp retornará um objeto json contendo 2 valores: 'resultado' - isso indicará se a solicitação foi bem-sucedida ou não (só vi 2 valores, "erro" e "êxito") e 'msg' - uma mensagem descrevendo o resultado.
Submeto meus formulários com este pedaço de jQuery:
fonte
post-json
descrito. Remova o&c=
URL se você o tiver no formulário de ação. UsedataType: 'jsonp'
ejsonp: 'c'
para a sua chamada ajax do jQuery.EMAIL
(em maiúsculas). Caso contrário, você receberá um erro informando que o endereço de email está em branco.Com base na resposta da gbinflames, mantive o POST e o URL, para que o formulário continuasse funcionando para aqueles com o JS desativado.
Em seguida, o uso do .submit () do jQuery alterou o tipo e a URL para manipular as respostas JSON.
fonte
Você deve usar o código do lado do servidor para proteger sua conta do MailChimp.
A seguir, há uma versão atualizada desta resposta que usa PHP :
Os arquivos PHP são "protegidos" no servidor em que o usuário nunca os vê, mas o jQuery ainda pode acessar e usar.
1) Faça o download do exemplo jQuery do PHP 5 aqui ...
http://apidocs.mailchimp.com/downloads/mcapi-simple-subscribe-jquery.zip
Se você possui apenas o PHP 4, basta baixar a versão 1.2 do MCAPI e substituir o
MCAPI.class.php
arquivo correspondente acima.http://apidocs.mailchimp.com/downloads/mailchimp-api-class-1-2.zip
2) Siga as instruções no arquivo Leiame adicionando a chave da API e o ID da lista ao
store-address.php
arquivo nos locais adequados.3) Você também pode querer coletar o nome de seus usuários e / ou outras informações. Você precisa adicionar uma matriz ao
store-address.php
arquivo usando as variáveis de mesclagem correspondentes.Aqui está a
store-address.php
aparência do meu arquivo, onde também encontro o nome, o sobrenome e o tipo de email:4) Crie seu formulário HTML / CSS / jQuery. Não é necessário estar em uma página PHP.
Aqui está algo parecido com o que meu
index.html
arquivo se parece:Peças necessárias ...
index.html construído como acima ou semelhante. Com o jQuery, a aparência e as opções são infinitas.
arquivo store-address.php baixado como parte dos exemplos de PHP no site Mailchimp e modificado com sua API KEY e LIST ID . Você precisa adicionar seus outros campos opcionais à matriz.
Arquivo MCAPI.class.php baixado do site Mailchimp (versão 1.3 para PHP 5 ou versão 1.2 para PHP 4). Coloque-o no mesmo diretório do seu store-address.php ou você deve atualizar o caminho da URL em store-address.php para que ele possa encontrá-lo.
fonte
Para quem procura uma solução em uma pilha moderna:
fonte
Com base na resposta da gbinflames, é isso que funcionou para mim:
Gere um formulário de inscrição simples na lista de chimpanzés, copie o URL da ação e o método (postagem) para seu formulário personalizado. Renomeie também os nomes dos campos de formulário para todas as letras maiúsculas (name = 'EMAIL', como no código original do emailchimp, EMAIL, FNAME, LNAME, ...) e use o seguinte:
fonte
Nesta data (fevereiro de 2017), parece que o mailchimp integrou algo semelhante ao que o gbinflames sugere em seu próprio formulário gerado por javascript.
Você não precisa de mais nenhuma intervenção agora, pois o mailchimp converterá o formulário em um ajax enviado quando o javascript estiver ativado.
Tudo o que você precisa fazer agora é colar o formulário gerado no menu incorporar na sua página html e NÃO modificar ou adicionar qualquer outro código.
Isso simplesmente funciona. Obrigado MailChimp!
fonte
Use o plugin jquery.ajaxchimp para conseguir isso. É fácil demais!
JavaScript:
fonte
Por outro lado, existem alguns pacotes no AngularJS que são úteis (no AJAX WEB):
https://github.com/cgarnier/angular-mailchimp-subscribe
fonte