Suporte » Desenvolvendo com WordPress » Dúvida sobre utilizar a API rest do wordpress

  • Estou com um problema, eu tenho um post personalizado com o nome de listing, estou querendo através da api do wordpress listar todos os posts desse tipo (type_post)
    e no futuro até mesmo editar e incluir novos, tudo por meio da API REST.
    Isso é possível?

    Hoje quando eu coloco {{base_url}}/wp-json/wp/v2/ tenho a lista de todos os posts
    porém quando digito o ID de um desses meus posts, ele não é exibido, ele retorna

    {
    “code”: “rest_post_invalid_id”,
    “message”: “ID inválido de post.”,
    “data”: {
    “status”: 404
    }

    Alguem poderia me dar uma luz?

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • Moderador Rahmohn

    (@rahmohn)

    Olá, @felipesudrj.

    Para recuperar todos os posts, basta fazer uma requisição do tipo GET para {{base_url}}/wp-json/wp/v2/posts. Para fazer o mesmo com um custom post type (tipo de post personalizado) é precigo fazer uma requisição para GET {{base_url}}/wp-json/wp/v2/custom_post_type.

    Por exemplo, no seu caso, o nome do tipo de post é “listing”, dessa forma, a requisição ficará GET {{base_url}}/wp-json/wp/v2/listing. Você também pode fazer outras operações (criar, editar e excluir) nessa mesma URL.

    Para mais informações, dá uma olhada no REST API Handbook.

    • Esta resposta foi modificada 1 mês atrás por  Rahmohn.

    {{base_url}}/wp-json/wp/v2/listings

    Obtenho a seguinte mensagem

    {
    “code”: “rest_no_route”,
    “message”: “Nenhuma rota foi encontrada que corresponde com o URL e o método de requisição”,
    “data”: {
    “status”: 404
    }
    }

    Moderador Rahmohn

    (@rahmohn)

    @felipesudrj

    Na hora de registrar o custom post type (register_post_type) você definiu o valor da propriedade show_in_rest para true?

    Eu não sei te dizer com certeza pois quem fez o registro do post não foi eu e sim um thema que comprei! (Aqui)

    Como eu poderia verificar isso?

    Moderador Rahmohn

    (@rahmohn)

    @felipesudrj

    Normalmente esse registro é feito no arquivo functions.php do tema. Abra esse arquivo e procure pela função register_post_type. Se você não encontrar (e já que é uma tema pago), entre em contato com quem desenvolveu o tema para maiores esclarecimentos.

    Moderador Rahmohn

    (@rahmohn)

    @felipesudrj

    Conseguiu resolver o problema? Se sim, marque o tópico como resolvido e/ou compartilhe o que vc fez para resolver.

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • Você deve estar logado para responder a este tópico.