A classe de log no Easy Digital Downloads foi introduzida pela primeira vez na v1.3.1 como um meio para registrar eventos e erros. Neste tutorial, usaremos a Classe de Log do Easy Digital Downloads para recuperar cada ID de pagamento associado à compra de um download. Uma vez que você tenha o ID de pagamento, você terá acesso a uma riqueza de informações sobre a compra, que podem ser usadas para aplicações práticas.
Um exemplo desse tipo é
EDD Purchase Gravatars, que exibe os gravatares dos clientes que compraram seu produto. Isso pode ser usado para mostrar prova social/confiança, onde os clientes são mais propensos a comprar seu produto quando veem outros clientes reais que já compraram.

O plugin usa o endereço de e-mail e o primeiro nome do cliente, que são exigidos pelo Easy Digital Downloads para concluir a compra. Usando a função get_avatar() do WordPress, o plugin recupera o gravatar associado ao endereço de e-mail fornecido e usa o primeiro nome do cliente para a tag alt da imagem.
O log de vendas
Para recuperar o endereço de e-mail e o primeiro nome do cliente para os gravatares, precisamos, em última análise, do ID de pagamento para cada compra. Isso pode ser encontrado recuperando primeiro o ID de log de cada compra. Podemos ver uma lista de todas as compras de um download clicando em “Ver Log de Vendas” na metabox “estatísticas do download” na tela de edição/publicação do download.
Na imagem abaixo, podemos ver que uma compra tem um ID de Log 55. Na mesma linha, podemos ver que ela tem um ID de pagamento 54. Cada vez que uma compra é feita, o ID de Log e o ID de pagamento são armazenados ao mesmo tempo, sequencialmente.

Analisando wp_postmeta
Para entender como podemos obter o ID de pagamento a partir do ID de log, precisamos analisar a tabela wp_postmeta do WordPress. Se filtrarmos a tabela por um post_id de 55 (ID de log), encontramos a meta_key _edd_log_payment_id com um valor de 54 (nosso ID de pagamento). Isso também corresponde ao log de vendas, ilustrado na imagem acima.

Filtrando por post_id com nosso ID de pagamento recém-descoberto (54), encontramos todas as informações úteis armazenadas em relação à nossa compra. Em EDD Purchase Gravatars, usamos o e-mail armazenado na meta_key _edd_payment_user_email , e o primeiro nome que está armazenado dentro do array _edd_payment_meta (há também um endereço de e-mail aqui dentro também). Para utilizar todas as informações armazenadas no array _edd_payment_meta, você precisará primeiro desserializá-lo, usando a função maybe_unserialize no WordPress.

Recuperando os IDs de Log
Agora que sabemos que precisamos primeiro recuperar todos os IDs de Log de um download, usaremos a útil classe de log do Easy Digital Downloads para fazer isso por nós. Esta função requer um ID de download para ser passada a ela, o que, no caso do EDD Purchase Gravatars, permite que os gravatares sejam exibidos em qualquer lugar do site, para qualquer download.
Recuperando os IDs de Pagamento
Agora que temos um array de todos os IDs de log, podemos usá-los em uma nova função para recuperar um array de todos os IDs de pagamento.
Conclusão
Agora que você tem um array de todos os IDs de pagamento, pode percorrer e exibir as informações de que precisa. O que mais você pode criar usando IDs de pagamento e a Classe de Log do EDD?
