O WordPress é um dos sistemas de gestão de conteúdos (CMS) mais populares do mundo, mas o WordPress evoluiu para além do suporte de conteúdos tradicionais de blogues - graças, em grande parte, à API REST do WordPress, uma API mágica que funciona como uma ponte entre WordPress e outras aplicações web externas. Esta incrível API funciona como uma ponte entre o WordPress e outras aplicações Web externas, permitindo que o WordPress "converse" melhor com outras aplicações e crie experiências Web fantásticas em conjunto.
Como é que esta API funciona? Ela faz uso de algo chamado "endpoints". Com esses pontos de extremidade, podemos facilmente buscar ou modificar o conteúdo do WordPress, e tudo está em JSON, que é uma linguagem que todos entendem. Não é necessário fazer login no backend do WordPress para fazer isso. A utilização do WordPress torna-se muito mais flexível e poderosa.
Compreender a API REST do WordPress
A API REST do WordPress é uma interface poderosa que permite interagir com sítios Web WordPress de forma programática utilizando métodos HTTP padrão. A sua funcionalidade predefinida inclui o acesso e a manipulação de vários tipos de dados do WordPress, como posts, páginas, comentários, utilizadores e taxonomias, num formato JSON estruturado. Também é possível efetuar operações CRUD no conteúdo remotamente.
No entanto, o verdadeiro valor da API REST do WordPress é a sua extensibilidade através de pontos de extremidade personalizados. Podem ser criados pontos de extremidade personalizados para adaptar a API a necessidades específicas, como a integração de funcionalidades adicionais, serviços de terceiros ou estruturas de dados únicas. Esta flexibilidade permite a criação de aplicações altamente personalizadas e ricas em funcionalidades a partir do WordPress.
Como planear os seus pontos finais de API personalizados
Planear a estrutura e a utilização de pontos finais personalizados é fundamental para um desenvolvimento eficiente da API. Os pontos finais personalizados adaptados a necessidades específicas requerem uma análise cuidadosa para garantir uma funcionalidade óptima. O planeamento estratégico promove a escalabilidade e a adaptabilidade, bem como a preparação dos pontos finais para o futuro, de modo a acomodar as necessidades comerciais em constante mudança.
Planeie o suporte do seu ponto final da API personalizada antes da implementação:
- Clareza da funcionalidade do ponto finalO termo "planeamento de pontos finais" esclarece a função específica do ponto final, o seu tipo de dados esperado e a sua utilização.
- Coerência e eficácia do desenvolvimentoO planeamento também melhora as interações com as APIs, garantindo a consistência na utilização de pontos finais, tipos de resposta e formatos. Além disso, saber para que serão utilizadas as APIs permite uma implementação correta, o que reduz o tempo de desenvolvimento e o risco de erros.
- Escalabilidade e adaptabilidade Definição da necessidade de pontos finais ajuda a prepará-los para o futuro, para que se adaptem às necessidades e requisitos comerciais em constante mudança, sem necessidade de uma remodelação completa.
- segurançaO planeamento adequado do ponto final ajuda a determinar os requisitos de autenticação para aceder ou manipular dados. Por vezes, o acesso a conteúdos através de APIs não exige a autenticação do utilizador. No entanto, para os conteúdos que contêm dados sensíveis ou não autorizados, é importante definir os requisitos de segurança e implementar medidas como a autorização e os controlos de acesso para ajudar a garantir a segurança dos dados.
A próxima secção prática explica como criar pontos finais personalizados que podem ser utilizados nodomínio do sítio/wp-json/custom/v2/testimonials
Recuperar testemunhos de clientes do sítio da base de dados WordPress.
Depois de enviar o pedido, o ponto final devolve um objeto JSON que contém informações sobre as classificações no sítio WordPress, tal como definido na função de retorno de chamada.
Criar tipos de correio personalizados para os seus pontos de extremidade
Primeiro, crie um tipo de post personalizado:
1. a partir do Painel de Administração do WordPressestado exteriorNavegação parcial paraEditor de ficheiros de temas .
2) Abrir o tema dofunction.php e adicionar o seguinte código:
função create_custom_testimonial_type() {
register_post_type('testimonials', array(
'labels' => array(
'name' => 'Testimonials', 'singular_name' =>
'singular_name' => 'Testimonial'.
),
'has_archive' => true, 'show_in_rest' => true, 'show_in_rest' => true
'show_in_rest' => true, // Isto ativa o suporte da API REST
));
}
add_action('init', 'create_custom_testimonial_type');
Este código cria uma "Recomendação" personalizada.Tipo de lançamento e ativar o suporte da API REST do WordPress ( 'show_in_rest' => true
). Chamadas de retornogancho add_action
função (matemática)create_testimonial_type
e lançá-lo durante a execução. As etiquetas e os parâmetros podem ser personalizados de acordo com as suas necessidades, retirando-os ou acrescentando-os.
3. clicar emDocumentos actualizados para guardar as alterações.
Actualize o painel de controlo para ver os painéis do WordPress que foram adicionados aoOpção recomendada.
4. clicar emTestemunhos > Adicionar nova publicação Criar uma nova publicação com testemunhos. É possível utilizar oPuxar citação Blocos. Dependendo da forma como as recomendações são apresentadas, podem ser utilizados outros blocos.
Aqui estão dois exemplos de testemunhos criados com blocos Pullquote:
Registo de pontos finais personalizados no WordPress
O registo de um ponto final personalizado torna-o disponível através da API REST. Isso envolve o uso doregister_rest_route
na funçãorest_api_init
para o chamar e fornecer um método de retorno de chamada que será chamado quando a rota for invocada.
Cole o seguinte código na secçãofunction.php Documentação:
add_action( 'rest_api_init', 'register_testimonial_rest_route' );
function register_testimonial_rest_route(){
register_rest_route(
'custom/v2',
'/testimonials',
array(
'methods' => 'GET',
'callback' => 'get_testimonials',
)
);
}
estesregister_rest_route()
São necessários três parâmetros:
- espaço de nomes de encaminhamento(
$route_namespace
): Esta é a primeira parte do segmento URL e deve seguir o padrão de número de fornecedor/versão. Os namespaces ajudam a diferenciar os pontos de extremidade e ajudam os clientes a contactar o suporte para os seus pontos de extremidade personalizados. Este tutorial utiliza opersonalizado/v2
Espaço de nome. - URL básico (
$route
): está localizado após o namespace e é o URL mapeado para o método. Podem ser registados vários pontos finais para a sua rota. Para os fins deste artigo, use o/depoimentos
Diz ao ponto final para obter o itinerário recomendado. - Opções para pontos de extremidade (
$args
): Aqui está uma matriz dos métodos HTTP utilizados para invocar a rota e a função de retorno de chamada que será chamada pelo ponto final quando o pedido for enviado. Discutiremos esta função de retorno de chamada na próxima secção.
Por fim, anote o endereço do ponto final. O formato de um ponto final éendereço do sítio/wp-json/namespace/route
. Assim, neste exemplo, os pontos finais seriamhttps://www.staging.kidspartysanctuary.co.uk/wp-json/custom/v2/testimonials
.
Implementação de funções de retorno de chamada para pontos finais
Depois de criar um tipo de post personalizado e registar o ponto final personalizado, o passo seguinte é escrever uma função de retorno de chamada. Esta função de retorno de chamada será chamada sempre que o ponto final for acedido.
1,get_testimonials
Utilize o seguinte código para declarar a sua função de retorno de chamada:
função get_testimonials(){
}
2. inicializar uma matriz de recomendação vazia para armazenar os dados de recomendação do WordPress recuperados:
$testimonials = array();
3) Configurar um$args
Uma matriz com o nome dos parâmetros de consulta paraWP_Query
Chamar.
$args = array(
'post_type' => 'testimonials', //especifica que pretende consultar o tipo de mensagem personalizado
'testimonials', //especifica que pretende consultar o tipo de mensagem personalizado
'nopaging' => true, // sem paginação, mas recupera todos os testemunhos de uma só vez
),
4. criar uma instância da classeWP_Query
A instância aceita a matriz$args
Se a consulta for executada com base nos parâmetros especificados e os resultados da consulta do WordPress forem armazenados no$query
na variável.
$query = new WP_Query($args)
5) Escreva uma instrução condicional para verificar se existem mensagens recomendadas. Em seguida, crie umenquanto
loop para iterar sobre os posts e retornar os posts recomendados para otítulo
responder com cânticosconteúdo
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
$testimonial_data = array( /*um array que armazena o título
e o conteúdo de cada post*/
'title' => get_the_title(),
// Adicionar outros campos conforme necessário
);
$testimonials[] = $testimonial_data;
}
wp_reset_postdata(); /* restaura $post
global para o posto atual para evitar quaisquer conflitos em consultas subsequentes*/
}
return rest_ensure_response( $testimonials ); /*garante que a resposta é
corretamente definida como um objeto de resposta para fins de coerência*/ } return rest_ensure_response( $testimonials ); /*assegura que a resposta é
6,Utilizar o PostmanTeste os seus pontos finais para verificar se consegue aceder aos seus dados.
Também pode ser testado utilizando um browser. Isto pode ser feito através dodomínio do sítio/wp-json/custom/v2/testimonials
Introduza o URL na barra de endereços do seu browser para aceder ao ponto final.
Quer facilitar o acesso e a interação dos utilizadores com os dados da sua base de dados WordPress? Basta fazer uma coisa: registar uma rota com uma função de retorno de chamada. Esta função de retorno de chamada actua como um pequeno ajudante de dados, ajudando a tratar os dados quando o utilizador pretende aceder ou manipulá-los. Desta forma, os endpoints personalizados da API do WordPress podem ser implementados sem qualquer problema!