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

Observação: Este complemento está disponível para os assinantes do plano Scale da MemberPress. Você pode fazer o upgrade para o plano Scale caso esteja inscrito em outro plano. Para fazer o upgrade, clique no Plano de mudança em seu página da conta.

Observação: Se você não é desenvolvedor, talvez ache interessante o nosso Integração com o Zapier, WP Fusionou o Uncanny Automator mais fácil de usar.

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

Observação: 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 sucinta em relação às ferramentas para desenvolvedores, é porque toda a documentação sobre os eventos de webhook e as URLs da API REST pode ser encontrada na interface do plugin. Na verdade, a interface fornecerá resultados dinâmicos com os quais você poderá trabalhar, além da possibilidade de testar webhooks diretamente do seu site. Você também pode consultar os documentos adicionais a seguir 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 MemberPress Edição em escala.
  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á ter o WordPress 4.7 ou uma versão posterior instalada
  4. Quando o complemento Developer Tools estiver instalado e ativado, você verá um novo item no menu do MemberPress:
  5. No Menu do Desenvolvedor, agora você poderá configurar webhooks, acessar a documentação dinâmica sobre eventos de webhook e testá-los, além de acessar a documentação dinâmica sobre todas as 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, obtenha 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 > Desenvolvedores > guia Webhook e a escuta de eventos de cadastro:

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 você estiver com dificuldades para fazer a autenticação básica funcionar, certifique-se de que
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, é possível que seu servidor de hospedagem tenha alguns problemas de configuração.
Leia mais sobre a causa mais comum aqui. O plugin Application Passwords precisa 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á entrar em contato com seu provedor de hospedagem para corrigir isso. Normalmente, é necessário adicionar algo como o seguinte ao arquivo .htaccess:

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

Se tudo mais falhar, o melhor é simplesmente usar 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 provedor de hospedagem precisará ajudá-lo a fazer essa configuração.

Se você não conseguir fazer com que o WP Cron funcione corretamente, mesmo depois de habilitar um cron do lado do servidor, talvez seja necessário (como último recurso) executar 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.