Você precisa usar a API de algum sistema, ou um webservice, o caminho seria CURL ou outra função do PHP, certo? Errado — No WordPress você pode economizar tempo usando funções próprias, sendo que essas funções vão verificar automaticamente qual a melhor forma de faze-lo, seja CURL ou outro.
Tudo será feito usando a chamada HTTP API do WordPress.
WP Remote Post – Requisições do tipo POST
Usando a função wp_remote_post() é possível fazer uma requisição HTTP do tipo POST. Abaixo um exemplo:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$request = wp_remote_post('URL DA REQUISICAO'); |
Nesse exemplo acima, teremos todos os dados da requisição dentro da variável $request, se quisermos retornar o body dela, isso é, o conteúdo da resposta, podemos usar a função wp_retrieve_body(), veja o exemplo abaixo:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$request = wp_remote_post('URL DA REQUISICAO'); | |
echo wp_remote_retrieve_body($request); |
Nesse exemplo o PHP irá exibir todo conteúdo da requisição.
WP Remote Get – Requisições do tipo GET
Usando a função wp_remote_get() nós conseguimos fazer uma requisição do tipo GET, veja o exemplo abaixo:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$request = wp_remote_get('URL DA REQUISICAO'); |
Assim como no POST, nós conseguimos retornar o conteúdo usando a função wp_retrieve_body(), veja um exemplo:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$request = wp_remote_get('URL DA REQUISICAO'); | |
echo wp_remote_retrieve_body($request); |
Conheça mais a HTTP API
Com só esses exemplos acima já conseguimos fazer uma requisição HTTP complexa. Incrível, não?
Conheça mais sobre essa API em:
https://codex.wordpress.org/HTTP_API
Gostei muito do seu post. Já faz algumas semanas que estou procurando algo do tipo para o meu site. Estou fazendo um projeto não comercial e queria simplicidade na hora do site. Optei por usar o wordpress mas para minha aplicação eu necessito da utilização de uma base de dados propria mas não consigo fazer a comunicação por formularios para o login dos usuarios. Você teria algum tutorial para me indicar? Estou utilizando uma REST api json para comunicação com o banco
Olá Luiz, de cabeça assim não tenho nenhum tutorial em mente, mas pra decodificar JSON você pode usar essa funções que listei com uma função nativa do PHP chamada json_decode(). Essa função vai transformar seu objeto JSON em objetos ou array do PHP.
Boa sorte.