function rbs_ajax_create_article() { if (isset($_POST['galleryid']) && (int) $_POST['galleryid'] && isset($_POST['categoryid']) && (int) $_POST['categoryid']) { $galleryid = intval($_POST['galleryid']); $categoryid = intval($_POST['categoryid']); $post_info = get_post($galleryid); if (gettype($post_info) != 'object') { echo '<p><strong>' . __('Post not created. Error: ', 'rbs_gallery') . '</strong><br><p>empty gallery id</p>'; die; } $Poster = new PostController(); $title = $post_info->post_title; if (isset($_POST['articletitle']) && $_POST['articletitle']) { $title = wp_kses_data($_POST['articletitle']); } $slug = 'post_' . $post_info->post_name; if (isset($_POST['articleslug']) && $_POST['articleslug']) { $slug = wp_kses_data($_POST['articleslug']); } $Poster->set_title($title); $Poster->add_category(array($categoryid)); $Poster->set_type("post"); $Poster->set_content('[robo-gallery id="' . $galleryid . '"]'); $Poster->set_author_id(get_current_user_id()); $Poster->set_post_slug($slug); $Poster->set_post_state("publish"); $Poster->create(); $posts_id = get_post_meta($galleryid, 'rbs_gallery_id', true); if (!$posts_id) { $posts_id = array(); } else { $posts_id = json_decode($posts_id, true); } $postId = $Poster->PC_current_post_id; $posts_id[] = $postId; update_post_meta($galleryid, 'rbs_gallery_id', json_encode($posts_id, JSON_FORCE_OBJECT)); if (isset($Poster->errors) && count($Poster->errors)) { echo '<p><strong>' . __('Post not created. Error: ', 'rbs_gallery') . '</strong><br>'; for ($i = 0; $i < count($Poster->errors); $i++) { $error = $Poster->errors[$i]; echo ' - ' . $error . '<br>'; } echo '</p>'; } else { echo '<h3>' . __('Post ', 'rbs_gallery') . '"' . $title . '"' . __(' created', 'rbs_gallery') . '</h3>'; echo '<p> <a href="' . esc_url(get_edit_post_link($postId)) . '" class="button button-small" target="_blank"> ' . __('Edit', 'rbs_gallery') . '</a> <a href="' . esc_url(get_permalink($postId)) . '" class="button button-small" target="_blank"> ' . __('Preview', 'rbs_gallery') . '</a> </p>'; } } else { echo '<p><strong>' . __('Error: input value', 'rbs_gallery') . '</strong></p>'; } die; }