WP REST-API create posts with custom fields generated by CPT











up vote
0
down vote

favorite












I used the CPT to create a post type UserQuestion with a few fields, such as ip_data. I want to be able to create one of this posts through API. So I looked into WP REST API .



However, the API offers /v2/user_question:



{
"title" : "test2",
"slug": "user_question",
"status": "publish",
"post_type": "user_question",
"meta": {
"ip" : "1111",
"question": "test question",
"answer": "yes, the answer"
}
}


The post is created, but it's not updating the customized fields data.



How should I make the request?










share|improve this question
























  • nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
    – Yang
    Feb 22 '17 at 7:48










  • hey @Yang, were you able to create a post and set the custom fields with the API?
    – Ben
    Nov 16 '17 at 0:24















up vote
0
down vote

favorite












I used the CPT to create a post type UserQuestion with a few fields, such as ip_data. I want to be able to create one of this posts through API. So I looked into WP REST API .



However, the API offers /v2/user_question:



{
"title" : "test2",
"slug": "user_question",
"status": "publish",
"post_type": "user_question",
"meta": {
"ip" : "1111",
"question": "test question",
"answer": "yes, the answer"
}
}


The post is created, but it's not updating the customized fields data.



How should I make the request?










share|improve this question
























  • nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
    – Yang
    Feb 22 '17 at 7:48










  • hey @Yang, were you able to create a post and set the custom fields with the API?
    – Ben
    Nov 16 '17 at 0:24













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I used the CPT to create a post type UserQuestion with a few fields, such as ip_data. I want to be able to create one of this posts through API. So I looked into WP REST API .



However, the API offers /v2/user_question:



{
"title" : "test2",
"slug": "user_question",
"status": "publish",
"post_type": "user_question",
"meta": {
"ip" : "1111",
"question": "test question",
"answer": "yes, the answer"
}
}


The post is created, but it's not updating the customized fields data.



How should I make the request?










share|improve this question















I used the CPT to create a post type UserQuestion with a few fields, such as ip_data. I want to be able to create one of this posts through API. So I looked into WP REST API .



However, the API offers /v2/user_question:



{
"title" : "test2",
"slug": "user_question",
"status": "publish",
"post_type": "user_question",
"meta": {
"ip" : "1111",
"question": "test question",
"answer": "yes, the answer"
}
}


The post is created, but it's not updating the customized fields data.



How should I make the request?







wordpress custom-post-type wordpress-rest-api






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Feb 22 '17 at 7:51









Raunak Gupta

5,44122052




5,44122052










asked Feb 22 '17 at 7:09









Yang

1




1












  • nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
    – Yang
    Feb 22 '17 at 7:48










  • hey @Yang, were you able to create a post and set the custom fields with the API?
    – Ben
    Nov 16 '17 at 0:24


















  • nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
    – Yang
    Feb 22 '17 at 7:48










  • hey @Yang, were you able to create a post and set the custom fields with the API?
    – Ben
    Nov 16 '17 at 0:24
















nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
– Yang
Feb 22 '17 at 7:48




nvm. I just figured that I used the ACF. So using ACF to Rest-API plugin works perfect!
– Yang
Feb 22 '17 at 7:48












hey @Yang, were you able to create a post and set the custom fields with the API?
– Ben
Nov 16 '17 at 0:24




hey @Yang, were you able to create a post and set the custom fields with the API?
– Ben
Nov 16 '17 at 0:24












1 Answer
1






active

oldest

votes

















up vote
0
down vote













add_action("rest_insert_user_question", function (WP_Post $post, $request, $creating) 
{
$metas = $request->get_param("meta");
if (is_array($metas)) {
foreach ($metas as $name => $value) {
//update_post_meta($post->ID, $name, $value);
update_field($name, $value, $post->ID);
}
}
}, 10, 3);


In your functions.php (or in your plugin) add the above add_action and function. Change the 'user_question' in the add_action to match your post type, for example "rest_insert_portfolio" for a portfolio post type. Use update_field if you're using Advanced Custom Fields or update_post_meta if you're using regular custom fields.






share|improve this answer










New contributor




Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.


















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














     

    draft saved


    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f42384841%2fwp-rest-api-create-posts-with-custom-fields-generated-by-cpt%23new-answer', 'question_page');
    }
    );

    Post as a guest
































    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    add_action("rest_insert_user_question", function (WP_Post $post, $request, $creating) 
    {
    $metas = $request->get_param("meta");
    if (is_array($metas)) {
    foreach ($metas as $name => $value) {
    //update_post_meta($post->ID, $name, $value);
    update_field($name, $value, $post->ID);
    }
    }
    }, 10, 3);


    In your functions.php (or in your plugin) add the above add_action and function. Change the 'user_question' in the add_action to match your post type, for example "rest_insert_portfolio" for a portfolio post type. Use update_field if you're using Advanced Custom Fields or update_post_meta if you're using regular custom fields.






    share|improve this answer










    New contributor




    Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      up vote
      0
      down vote













      add_action("rest_insert_user_question", function (WP_Post $post, $request, $creating) 
      {
      $metas = $request->get_param("meta");
      if (is_array($metas)) {
      foreach ($metas as $name => $value) {
      //update_post_meta($post->ID, $name, $value);
      update_field($name, $value, $post->ID);
      }
      }
      }, 10, 3);


      In your functions.php (or in your plugin) add the above add_action and function. Change the 'user_question' in the add_action to match your post type, for example "rest_insert_portfolio" for a portfolio post type. Use update_field if you're using Advanced Custom Fields or update_post_meta if you're using regular custom fields.






      share|improve this answer










      New contributor




      Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















        up vote
        0
        down vote










        up vote
        0
        down vote









        add_action("rest_insert_user_question", function (WP_Post $post, $request, $creating) 
        {
        $metas = $request->get_param("meta");
        if (is_array($metas)) {
        foreach ($metas as $name => $value) {
        //update_post_meta($post->ID, $name, $value);
        update_field($name, $value, $post->ID);
        }
        }
        }, 10, 3);


        In your functions.php (or in your plugin) add the above add_action and function. Change the 'user_question' in the add_action to match your post type, for example "rest_insert_portfolio" for a portfolio post type. Use update_field if you're using Advanced Custom Fields or update_post_meta if you're using regular custom fields.






        share|improve this answer










        New contributor




        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.









        add_action("rest_insert_user_question", function (WP_Post $post, $request, $creating) 
        {
        $metas = $request->get_param("meta");
        if (is_array($metas)) {
        foreach ($metas as $name => $value) {
        //update_post_meta($post->ID, $name, $value);
        update_field($name, $value, $post->ID);
        }
        }
        }, 10, 3);


        In your functions.php (or in your plugin) add the above add_action and function. Change the 'user_question' in the add_action to match your post type, for example "rest_insert_portfolio" for a portfolio post type. Use update_field if you're using Advanced Custom Fields or update_post_meta if you're using regular custom fields.







        share|improve this answer










        New contributor




        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.









        share|improve this answer



        share|improve this answer








        edited 10 hours ago









        quant

        8831824




        8831824






        New contributor




        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.









        answered 16 hours ago









        Stephen Mullen

        12




        12




        New contributor




        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.





        New contributor





        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.






        Stephen Mullen is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
        Check out our Code of Conduct.






























             

            draft saved


            draft discarded



















































             


            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f42384841%2fwp-rest-api-create-posts-with-custom-fields-generated-by-cpt%23new-answer', 'question_page');
            }
            );

            Post as a guest




















































































            Popular posts from this blog

            List item for chat from Array inside array React Native

            Thiostrepton

            Caerphilly