Uma Introdução à API REST do WordPress

by Jason Cosper
Uma Introdução à API REST do WordPress thumbnail

Quando a REST API foi finalmente adicionada ao núcleo do WordPress, foi o fim de uma longa jornada. Muitos anteciparam essa mudança como o maior avanço para o WordPress na história da plataforma. No entanto, se você não está familiarizado com a REST API, pode estar confuso sobre o que tudo isso significa.

Em resumo, a adição da API REST do WordPress transformou o WordPress em uma estrutura de aplicação totalmente caracterizada. Isso aumentou significativamente sua ‘extensibilidade’, ou sua capacidade de ser expandido com novas funcionalidades e capacidades. Além disso, expandiu o potencial da plataforma para se comunicar com outros sites e aplicações.

Introdução às APIs REST

Antes de aprofundarmos na API REST do WordPress, é importante esclarecer nossa terminologia. Este é um assunto onde precisaremos usar muitas siglas, então vamos esclarecer essas primeiro.

Primeiramente, você precisará saber o que são Application Programming Interfaces (APIs). Em termos simples, uma API é um meio pelo qual um sistema permite que outros sistemas se conectem aos seus dados.

Por exemplo, quando um site adiciona um botão de ‘curtir’ do Facebook a uma página, ele faz isso ao se conectar à API do Facebook. Isso permite que a página da web use a API para receber dados (o código do botão de curtir) e enviar dados (a solicitação de curtir).

Então, o que é especificamente uma API REST? Representational State Transfer (REST) é um tipo de API específico para serviços web. Contém um conjunto padronizado de instruções e regras, facilitando a conexão entre todos os serviços ‘RESTful’.

Em resumo, as REST APIs permitem que você faça solicitações a um sistema externo. Um exemplo disso é o Twitter. Você pode usar sua API para solicitar um certo número de tweets de um usuário específico. A API então retornará os tweets com base em sua solicitação, que você pode incorporar em seu site usando HTML e CSS.

Essas solicitações são realizadas usando JavaScript Object Notation (JSON). Esta é uma linguagem especificamente projetada para enviar, receber e armazenar dados.

Vamos cobrir JSON mais adiante neste artigo, mas recomendamos que você dedique um tempo para se familiarizar com esta linguagem antecipadamente. Isso ajudará a prepará-lo para usar a API REST do WordPress e entender alguns dos conceitos sobre os quais falaremos.

O que é a API REST do WordPress (E Por Que é Importante)

WordPress Rest API

A API REST do WordPress funciona de maneira muito semelhante aos exemplos que já abordamos. Basicamente, a API REST do WordPress oferece acesso total às funcionalidades do WordPress a partir de qualquer framework compatível com JSON.

De maneira semelhante a como a API do Twitter permite que você recupere e envie tweets, a API REST do WordPress pode ser usada para gerenciar posts, usuários, categorias e muito mais a partir de plataformas externas. Ela permite que você use o WordPress de várias maneiras anteriormente inéditas.

A REST API foi anunciada lá em 2013. Inicialmente como um plugin, era para ser incorporada ao núcleo do WordPress na Versão 4.1. Como muitas vezes acontece, atrasos adiaram o lançamento até que finalmente foi implementada no núcleo com o lançamento do WordPress 4.7 três anos depois.

Esta foi uma longa mas compensadora espera para muitas pessoas que viam a API REST do WordPress como um passo importante para a plataforma. Você pode estar se perguntando por que essa adição foi tão importante, especialmente porque muitos usuários provavelmente não notaram muita diferença. Como se vê, a inclusão da API REST foi uma mudança fundamental para o WordPress por muitas razões.

Ao implementar uma API REST, o WordPress deixou de ser simplesmente uma plataforma para criação de sites. Agora, ele se tornou um framework de aplicação completo. Isso significa que os desenvolvedores podem usar um site WordPress para criar aplicações para dispositivos móveis e para a web, ou como um repositório de informações.

Esta mudança também permitiu que o WordPress se distanciasse de sua dependência do PHP. Ao tornar o WordPress compatível com qualquer linguagem compatível com JSON, a API REST ampliou muito as possibilidades para os desenvolvedores, permitindo que eles usassem a funcionalidade do WordPress com praticamente qualquer framework.

Finalmente, a REST API oferece maior flexibilidade com as interfaces que você pode usar para trabalhar com a plataforma. Ela tornou a interface de administração completamente opcional, pois agora você pode interagir com seu site WordPress inteiramente através de comandos JSON.

Agora, vamos ver como o JSON e a REST API se unem para tornar isso possível.

Como a REST API e o JSON Trabalham Juntos

A esta altura, você já deve ter compreendido os aspectos teóricos da REST API do WordPress. Então, vamos olhar para o lado mais prático da tecnologia. O manual oficial descreve o uso da REST API da seguinte forma:

“A API REST do WordPress fornece pontos de extremidade de API para tipos de dados do WordPress que permitem aos desenvolvedores interagir com sites remotamente, enviando e recebendo objetos JSON (JavaScript Object Notation).”

A primeira palavra na qual precisamos focar aqui é “endpoints”. A maneira mais fácil de pensar em um endpoint é como um pedaço de dados ou uma função que pode ser chamada usando uma solicitação JSON. Por padrão, o WordPress fornece um grande número de endpoints padrão para usar, mas os desenvolvedores também podem criar endpoints personalizados.

Para alcançar um ponto final, você deve usar uma ‘rota’, que assume a forma de uma URL normal. Você pode até mesmo tentar isso agora mesmo.

Vá para o seu próprio site WordPress e adicione /wp-json/wp/v2 ao final do seu URL. Se o seu site for http://example.com, você deverá inserir http://example.com/wp-json/wp/v2.

Quando você carrega esta rota, você chegará ao endpoint, que neste caso, retorna todo o conteúdo e meta-dados para seu site em um formato JSON (desorganizado). Ao usar diferentes rotas, você pode acessar diferentes endpoints para obter tipos específicos de informações e realizar várias tarefas.

Existem três principais solicitações JSON que você usará com a API REST, então vamos também dar uma olhada rápida nelas agora. São:

  • GET. Este tipo de requisição é usado para recuperar e listar dados da API. Por exemplo, você usaria uma requisição GET para retornar uma lista de usuários no seu site ou compilar postagens de blog de um determinado período.
  • POST. Esta requisição é usada para enviar dados para a API. Ela permite que você envie novas informações para o WordPress, como adicionar novos usuários e postagens ou atualizar dados existentes.
  • DELETE. Como o nome sugere, esta requisição é usada para deletar dados. Isso permite que você remova postagens, páginas, usuários e mais.

GET e POST podem às vezes ser usados com o mesmo endpoint para alcançar resultados diferentes.

Por exemplo, vamos olhar para o endpoint /me/settings/. Se você realizasse uma solicitação GET neste endpoint, você receberia uma lista das configurações do usuário atual. No entanto, usando uma solicitação POST no mesmo endpoint, você poderia atualizar as configurações.

Receba conteúdo diretamente na sua caixa de entrada

Inscreva-se agora para receber todas as últimas atualizações, diretamente na sua caixa de entrada.

Introdução à API REST do WordPress

Agora vamos colocar toda essa teoria em prática e mostrar alguns exemplos bem básicos do que você pode fazer com a REST API. Isso é apenas uma amostra para ajudá-lo a se sentir confortável usando a REST API para processar solicitações ao WordPress.

Para mais exemplos, recomendamos consultar a biblioteca de referência oficial e os Recursos da REST API.

As seguintes técnicas exigirão que você use a linha de comando para processar solicitações JSON. Isso permite que você interaja com seu site WordPress por meio de uma interface baseada em texto e enviando comandos simples.

Se você não tem experiência em usar a linha de comando, recomendamos que dedique algum tempo para aprender os conceitos básicos primeiro. Você também pode querer usar SSH para criar a conexão com seu site.

Finalmente, quando você estiver pronto, vamos olhar alguns exemplos de como você pode usar a API REST do WordPress!

1. Retornar Publicações de um Site

Embora você obviamente precise da autorização adequada para editar um site, é possível recuperar algumas informações de quase qualquer site WordPress. Isso ocorre porque a REST API é consistente em todas as instalações do WordPress.

Como discutimos, a principal razão para a existência das APIs é permitir que aplicações externas acessem alguns dos seus dados. Neste exemplo, podemos recuperar uma única postagem do blog oficial de notícias do WordPress:

curl https://wordpress.org/news/wp-json/wp/v2/posts/1

O ID foi definido como 1, o que significa que esta solicitação irá recuperar a primeira publicação no blog. Pode ser difícil de perceber, já que o JSON não é muito legível, mas entre o código, você pode identificar todo o conteúdo e os meta-dados da publicação:

recuperar uma postagem do blog WordPress usando a WordPress Rest API

Você poderia então usar essa informação em um aplicativo, por exemplo, para exibi-la usando sua própria estilização personalizada.

Se você deseja retornar todas as postagens do blog, tudo o que você precisa fazer é remover o ID no final. No entanto, é mais provável que você queira retornar um número selecionado de postagens. A seguinte solicitação retornará as três últimas postagens:

curl https://wordpress.org/news/wp-json/wp/v2/posts/?per_page=3

Você pode experimentar isso por si mesmo com outros sites e até mesmo com o seu próprio blog.

2. Atualizar uma Postagem

Agora, vamos tentar fazer algumas alterações no WordPress usando a API REST. Para fazer isso, você precisará estar logado no site que deseja gerenciar. Por exemplo, se você estiver usando SSH, precisará fazer login no seu servidor.

Neste exemplo, vamos atualizar uma postagem existente. Primeiro, vamos usar uma solicitação para atualizar o título da postagem com o ID de 1:

curl -X POST http://example.com/wp-json/wp/v2/posts/1 -d '{"title":"Um Título Novinho em Folha"}'

Isso é bastante autoexplicativo. O argumento do título mostra que você está atualizando o título do post, que é seguido pela string de texto contendo a substituição.

Existem muitos outros argumentos que você pode usar para fazer alterações em uma postagem. Por exemplo, você pode usar uma lista para atribuir categorias à postagem, publicá-la ou alterar seu conteúdo completamente.

3. Excluir um Usuário

Finalmente, vamos ver como você pode remover dados usando a REST API. Neste exemplo, vamos remover um usuário do site. Naturalmente, você precisa estar logado e autorizado para gerenciar usuários antes de poder usar essa função.

Em seguida, você pode usar a seguinte solicitação para deletar o usuário com um ID de 101:

curl -X DELETE http://example.com/wp-json/wp/v2/users/101

Isso removerá o usuário especificado do site. Você pode usar os parâmetros adicionais para reatribuir as postagens do usuário a outro usuário com base em seu ID. Alternativamente, você pode forçar uma exclusão permanente em vez de adicionar o usuário à lixeira.

Através destes exemplos, você pode começar a ver como a REST API permite que você gerencie o conteúdo do seu site e se conecte com outros. Se você quiser aprender mais, recomendamos que explore mais a fundo o Manual da REST API.

Explore o Desenvolvimento WordPress

A API REST do WordPress foi um grande avanço para a plataforma, saindo de suas origens e indo em direção ao futuro. Os desenvolvedores estavam animados desde o primeiro dia, mas se você não estava familiarizado com as APIs REST desde o início, você poderia ter ficado confuso sobre o motivo.

Embora a REST API possa parecer complexa para iniciantes, você não precisa ser um desenvolvedor experiente para usar algumas solicitações básicas. Por exemplo, a API permite que você execute diversas tarefas no seu próprio site (ou em outros), como retornar posts, atualizar posts e excluir usuários.

Está procurando uma hospedagem de alto desempenho para o seu site WordPress? Na Dreamhost, nossos planos gerenciados DreamPress oferecem ambientes de staging profissionais, backups automáticos, caching embutido e mais. Confira nossos planos hoje mesmo!

Imagem de fundo do anúncio

Faça Mais com DreamPress

As atualizações automáticas do DreamPress, caching e defesas de segurança robustas tiram a gestão do WordPress das suas mãos para que você possa focar no seu site.

Ver Planos