Menu adicional

Obtenha o MemberPress hoje mesmo! Comece a ser pago pelo conteúdo que você cria! Obtenha o MemberPress agora

Visão geral do uso do MemberPress Developer Tools Addon

Esse complemento é somente incluído em sua compra do MemberPress Mais e Profissional Edições.

Se você não for um desenvolvedor, talvez ache que nosso Integração com o Zapier, WP Fusionou o Uncanny Automator mais fácil de usar.

Nosso MemberPress Developer Tools Add-on estende o MemberPress para incluir um API REST completa e recurso de evento Webhook completo.

Observe que, a partir da versão 1.2.14, removemos o argumento de senha para criação e atualização de membros, pois ele representa um risco de segurança.

Se a documentação nesta página parecer leve para ferramentas de desenvolvedor, isso se deve ao fato de que toda a documentação dos eventos de webhook e dos URLs da API REST pode ser encontrada na interface do plug-in. Na verdade, a interface lhe fornecerá resultados dinâmicos para trabalhar e a capacidade de testar webhooks diretamente do seu site. Você também pode consultar os seguintes documentos adicionais para obter mais informações:

Começar não poderia ser mais fácil... veja como

  1. Certifique-se de que sua chave de ativação do MemberPress seja para a versão Edição MemberPress Plus ou MemberPress Pro.
  2. Para instalar o complemento MemberPress Developer Tools, vá para a página MemberPress > Add-ons e clique no botão "Install Add-on" (Instalar complemento).
  3. Para usar a API REST do MemberPress, você precisará executar o WordPress 4.7+
  4. Quando o complemento Developer Tools estiver instalado e ativado, você verá um novo item no menu do MemberPress:
  5. No Developer Menu, agora você poderá configurar webhooks, visualizar a documentação dinâmica e testar eventos de webhook e visualizar a documentação dinâmica de todos os URLs da API REST do MemberPress:

Exemplo de código PHP cURL

Este exemplo adiciona um membro, atribui-o a uma associação (por meio de uma transação) e aciona um e-mail de boas-vindas no processo:

'testingboy897@test.com',
    'username' => 'testingboy897@test.com',
    'first_name' => 'test',
    'last_name' => 'test_last_name',
    'send_welcome_email' => true, // Aciona um e-mail de boas-vindas - isso só funciona se for adicionada uma transação (abaixo)
    'transaction' => [
      'membership' => 376, // ID da associação
      'amount' => '0.00',
      'total' => '0.00',
      'tax_amount' => '0.00',
      'tax_rate' => '0.000',
      'trans_num' => 'mp-txn-' . uniqid(),
      'status' => 'complete',
      'gateway' => 'free',
      'created_at' => gmdate( 'c' ),
      'expires_at' => '0000-00-00 00:00:00'
    ]
  ]
);

curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, "POST" ); curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, "POST" );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data_string );

$header = array();
$header[] = 'MEMBERPRESS-API-KEY: MgCUGSO5Qg'; // Sua chave de API das ferramentas de desenvolvedor do MemberPress aqui
$header[] = 'Content-Type: application/json';
$header[] = 'Content-Length: ' . strlen($data_string);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);

$response = curl_exec($ch);

se(curl_errno($ch)){
  throw new Exception(curl_error($ch));
}

echo $response;

curl_close($ch);

Chave do webhook

Desde o MemberPress Developer Tools Add-on 1.2.5, introduzimos uma configuração de chave de webhook que pode ser encontrada no menu MemberPress > Developers > guia Webhook.

Você pode usar a chave para autenticar solicitações POST de webhook. Ela é gerada automaticamente pelo complemento MemberPress, mas se você achar que sua chave foi comprometida, poderá gerar novamente uma nova chave de webhook a qualquer momento.

Para validar a solicitação do webhook, busque os cabeçalhos HTTP e procure por memberpress-webhook-key. Aqui está um exemplo de um cabeçalho HTTP com memberpress-webhook-key recebido após a criação de uma nova URL de webhook no menu MemberPress > Developers > guia Webhook e a escuta de eventos de inscrição:

Solução de problemas de autenticação básica

O método preferencial de autenticação é por meio da chave de API fornecida pelo MemberPress Developer Tools. No entanto, sabemos que muitos de vocês também usam o método menos seguro - Autenticação básica - para se conectar à WP-API. No entanto, isso pode apresentar alguns desafios, com os quais as informações abaixo podem ajudá-lo.

Se estiver com dificuldades para fazer a autenticação básica funcionar, verifique se você instalou o plug-in Application Passwords e seguiu suas instruções.

Uma solicitação típica de autenticação básica é a seguinte:
Nome do cabeçalho: Autorização
Valor do cabeçalho:  Basic base64_encode( wp_admin_user_login_here:application_passwords_password_here )

Seu usuário deve ter o remove_users ou o MemberPress Developer Tools retornará uma resposta 401.

Se você ainda não conseguir se autenticar, seu servidor de hospedagem pode ter alguns problemas de configuração. Leia mais sobre a causa mais comum aqui. O plug-in Application Passwords deve ter as variáveis PHP_AUTH_USER e PHP_AUTH_PW definidas. Se elas não estiverem definidas, o Application Passwords não conseguirá autenticar o usuário, e você precisará trabalhar com o seu provedor de serviços de Internet para corrigir isso. Normalmente, é necessário adicionar algo como o seguinte ao arquivo .htaccess:

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Se tudo o mais falhar, é melhor usar apenas a chave da API no  MEMBERPRESS-API-KEY cabeçalho de solicitação HTTP. Abaixo está um exemplo de código com a chave de API e PHP cURL:

<?php
$url = 'http://testsite.com/wp-json/mp/v1/me';
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$headers = [ 'MEMBERPRESS-API-KEY: MdCUPSO5Qr', 'Content-Type: application/json' ];
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers );
$response = curl_exec( $ch );
se( curl_errno( $ch ) ) { throw new Exception( curl_error( $ch ) ); }
curl_close($ch);
echo $response;

Solução de problemas com webhooks

Se os webhooks de teste estiverem funcionando, mas os testes ao vivo não estiverem sendo disparados, o WP Cron provavelmente está desativado ou não está funcionando como deveria. As ferramentas de desenvolvedor do MemberPress dependem do WP Cron para enviar os webhooks.

Nesse caso, a maneira mais fácil de verificar é verificar a tabela wp_mepr_jobs em seu banco de dados para ver se os trabalhos de webhook estão presos lá com um status de "pendente".

Quando possível, recomendamos desativar o WP Cron baseado no carregamento da página e, em vez disso, acioná-lo a partir de um cron do lado do servidor que seja executado a cada minuto. A SiteGround tem um ótimo artigo sobre fazendo isso aqui. E o WordPress.org tem alguns informações adicionais aqui. Infelizmente, não podemos ajudá-lo com isso, e seu webhost precisará ajudá-lo a configurar.

Se você não conseguir fazer com que o WP Cron seja acionado corretamente, mesmo depois de ativar um cron no lado do servidor, talvez seja necessário (como último recurso) emitir a seguinte consulta:

UPDATE wp_options SET option_value = '' WHERE option_name = 'cron';
Este artigo foi útil?

Artigos relacionados

garota do computador

Obtenha o MemberPress hoje mesmo!

Comece a ser pago pelo conteúdo que você cria.