Create dynamic sub posts for a WordPress custom post type

I planning now simple plugin, i search for idea to adding subposts (child) for post in wordpress on post creation page.

I want to add form with two fields, title and content, and save it with parent ID of current parent post.

Read More

Simple mockup:

enter image description here

For create subpost i can use this:

$post = array(
    'post_title'    => wp_strip_all_tags( $_POST['post_title'] ),
    'post_content'  => $_POST['post_content'],
    'post_status'   => 'publish',
    'post_parent'   => id of post
);
wp_insert_post($post);

But i want do this dynamic with ajax, but on create page i dont have parent post ID.
Someone have ideas for this?

Related posts

1 comment

  1. Actually, you do have a post ID, it just isn’t in the database or in the query. You can find it within the global variable $wpdb.

    So what you could do is to take the variable and print it into the HTML body like described in this answer, using the admin_footer hook like this:

    add_action('admin_footer', 'print_id_for_ajax');
    function print_id_for_ajax() {
        $post_id = isset($_GET['post']) ? $_GET['post'] : $GLOBALS['wpdb']->insert_id;
        ?>
            <script>
                var post_id = <?php echo $post_id ?>;
            </script>
        <?php
    }
    

    (Of course, only if $_GET['post'] is unset, if the post doesn’t exist yet, do we want to take if from $GLOBALS['wpdb'])

    Put it into your theme’s function.php file and now you can use the post_id variable inside of your javascript and pass it into the AJAX call.

Comments are closed.