Este documento fornece uma introdução à REST API do WordPress, explicando o que é uma REST API, seus principais usos no WordPress e como instalar e usar o plugin REST API V2 para realizar queries e modificar dados via requisições HTTP.
2. Matheus Gimenez
WordPress - 3 anos
Moderador do fórum pt_BR
Contribuidor do Odin
brasa.art.br @deshawngamer
matheus@brasa.art.br
3. O que é uma REST
API?
REST API é um nome usado para
aplicações geradas através de
conexões HTTP.
Ou seja, conseguimos controlar uma
aplicação (nesse caso, o WordPress)
através de dados enviados via HTTP.
4. Usos da REST API
no WordPress
Agora que definimos é uma REST API
temos que entender os principais
usos dela.
6. NOSSO NEGÓCIO É UNIR
[ IMAGEM ]
Para fazer um painel exclusivo
7. NOSSO NEGÓCIO É UNIR
[ IMAGEM ]
Webapps e single page
application (SPA)
8. E muito mais!
A REST API utiliza a formatação JSON!
As maiores linguagens de
programação possuem
interpretadores JSON.
Então podemos utilizar em diversos
dispositivos.
9. Instalando o
Plugin REST API
V2
Nessa palestra trabalharemos com a
versão 2 da API.
Como ela ainda não foi adicionada
ao core do WordPress, teremos que
baixar o plugin...
10. Para baixarmos é só procurar no
repositório pelo nome WordPress
REST API (Version 2)
Ou baixe diretamente atráves desse
link e faça upload do ZIP no painel:
https://wordpress.org/plugins/rest-
api/
12. Tipos de autenticação
Cookie Authentication:
Essa autenticação, como o nome já
diz, é por cookies do browser.
Cookie authentication somente
funciona para temas e plugins em
uma mesma instancia do WordPress
13. Tipos de autenticação
Basic Authentication:
Esse tipo utiliza a autenticação
padrão do protocolo HTTP.
Não é indicado, já que as suas
credenciais vão ser passadas em cada
conexão.
14. Tipos de autenticação
OAuth:
Autenticação OAuth é a autenticação
principal usado para conexões
externas. No momento, as chaves
(tokens) para essa autenticação são
geradas através do WP CLI (linha de
comando do WordPress).
15. Usando API sem
autenticação
Esse metodo é aconselhavel somente
para testes. Não use em sites em
produção.
Usaremos o plugin WP-API-CORS
para isso:
https://github.com/thenbrent/WP-
API-CORS
Faça o download do arquivo ZIP no
GitHub e faça upload dele na página
de plugins do painel do WordPress.
Ative e vamos pra proxima!
16. Instalou? Agora vamos
ao primeiro teste
Depois de instalado vamos fazer um
Query simples com ela e ver se trás
resultados.
Vá no seu browser favorito e digite o
seguinte endereço:
SEU_SITE/wp-json/wp/v2/posts
Temos também uma URL de testes
da API online:
http://demo.wp-api.org/wp-
json/wp/v2/posts
17. A resposta será algo parecido com
isso:
Mas não precisa se assustar! No
próximo passo veremos como
visualizar esse tipo de resposta.
18. Visualizando
JSON atraves do
browser
A maioria dos browsers possui
extensões/addons para visualizar
JSON.
Mas aqui colocarei um exemplo de
um online:
http://json.parser.online.fr/
20. Fazendo uma busca
utilizando a REST API
Agora veremos como fazer um Query
simples, buscando um post pelo
nome.
Vou fazer esse em localhost, mas a
sintaxe é a seguinte:
SEU_SITE/api/wp-
json/wp/v2/posts/?filter[s]=termo_
da_busca
21. Com o parametro
filter[nome_do_filtro] nós
podemos alterar o query de
várias formas
Vejam a documentação:
http://wp-api.org/#posts_retrieve-
posts_input
23. A REST API não é
só Query
Com a REST API conseguimos ir além
de só retornar posts. Nós podemos
também podemos editar, adicionar
novos.
Adicionar e editar posts
Deletar posts
e etc.
Interface para controlar uma aplicacoes atraves de conexao HTTP. Ou seja, basicamente vamos conseguir controlar funcoes do WordPress atraves de aplicacoes externas.
Esse é o primeiro uso que vem a cabeça quanto pensamos em API REST.
Nós consumir os dados do WordPress em dispositivos mobile, seja qual for a linguagem de programação.. Podemos usar JavaScript com AngularJS (ou React), podemos usar Java ou até Objetive-C.
Todas as linguagens modernas possuem interpretadores de JSON.
Para quem não viu, semana passada a Automattic lançou o Calypso, um novo painel para o WordPress.com (a plataforma de hospedagem de blogs).
Esse é pra mim o melhor exemplo do que se pode fazer com uma REST API. Alguem aqui já tentou alterar de alguma forma o layout do dashboard do WordPress? (pergunto ao publico)
Respondo que é bem engessado.. Agora com uma REST API nós temos a possibilidade de criar um novo painel sem ficar preso a filtros e actions.
Vamos supor por exemplo que você queira criar um site para fotografos. Não precisamos de toda a interface do dashboard do WordPress, podemos criar um novo painel com os itens necessários para o cliente gerenciar o site.
Podemos refazer mostrando somente a area de subir imagens, gerenciar determinadas páginas e etc.
Para quem não viu, semana passada a Automattic lançou o Calypso, um novo painel para o WordPress.com (a plataforma de hospedagem de blogs).
Esse é pra mim o melhor exemplo do que se pode fazer com uma REST API. Alguem aqui já tentou alterar de alguma forma o layout do dashboard do WordPress? (pergunto ao publico)
Respondo que é bem engessado.. Agora com uma REST API nós temos a possibilidade de criar um novo painel sem ficar preso a filtros e actions.
Vamos supor por exemplo que você queira criar um site para fotografos. Não precisamos de toda a interface do dashboard do WordPress, podemos criar um novo painel com os itens necessários para o cliente gerenciar o site.
Podemos refazer mostrando somente a area de subir imagens, gerenciar determinadas páginas e etc.
"Agora que eu apresentei as formas de autenticacao da REST API nosso exemplo nao vai mostrar nenhuma delas, porque nao gosto de usar atenticacao...rs"
Esse ambiente de demo é oficial da equipe que está desenvolvendo a REST API.
Esse é o primeiro uso que vem a cabeça quanto pensamos em API REST.
Nós consumir os dados do WordPress em dispositivos mobile, seja qual for a linguagem de programação.. Podemos usar JavaScript com AngularJS (ou React), podemos usar Java ou até Objetive-C.
Todas as linguagens modernas possuem interpretadores de JSON.
Aqui eu mostro a resposta e debato ponto a ponto.
Mostrar que o thumbnail não aparece na forma de URL e então puxar pro proximo ponto.
Aqui eu mostro a resposta e debato ponto a ponto.
Mostrar que o thumbnail não aparece na forma de URL e então puxar pro proximo ponto.
Aqui eu mostro a resposta e debato ponto a ponto.
Mostrar que o thumbnail não aparece na forma de URL e então puxar pro proximo ponto.
Aqui eu mostro a resposta e debato ponto a ponto.
Mostrar que o thumbnail não aparece na forma de URL e então puxar pro proximo ponto.