Почему wp_insert_post выдает 0 при $wp_error = true?
-
Передаю через ajax массив для постинга в wordpress c фронтенда в бекенд (разные домены).
Отсюда:$custom_fields = array(); $custom_fields[$sizef] = $_REQUEST['sizef']; $custom_fields[$topf] = $_REQUEST['topf']; $post_data = array( 'post_title' => $_REQUEST['title'], 'post_content' => $_REQUEST['mytextarea'], // передаем значение из TinyMCE 'post_status' => 'publish', 'post_author' => 1, 'post_category' => array($_REQUEST['cat']), 'post_name' => $_REQUEST['slug'], 'post_type' => 'post', 'meta_input' => $custom_fields, ); $json_postdata = json_encode($post_data); echo '<a id="publish" href="#">Опубликовать пост</a>';
Это запрос, который отправляет POST через ajax:
$(document).ready(function () { var poste_data = JSON.stringify(<?php echo $json_postdata; ?>); var poste_data = JSON.parse(poste_data); function postit(id_url) { $('#ebobo').addClass('hide'); $.ajax({ url: '<?php echo $url_obrabotka . 'post.php'; ?>', type: 'POST', timeout: 600000, data: { "title": "<?php echo $h1c ?>", "poste_data": poste_data }, }).done(function (kar) { $('.result').html(kar); }).fail(function () { console.log('Error:', data); }); } $("#publish").click(function () { postit(); }) });
Сюда:
echo $post_it = wp_insert_post ($_REQUEST['poste_data']); if( is_wp_error($post_id) ){ echo $post_id->get_error_message(); } else { echo $post_id; }
На выходе постинг происходит, но $post_id возвращается на id поста, а просто 0. В чем может быть ошибка и как найти ошибку?…
Просмотр 2 ответов — с 1 по 2 (всего 2)
Просмотр 2 ответов — с 1 по 2 (всего 2)
- Тема «Почему wp_insert_post выдает 0 при $wp_error = true?» закрыта для новых ответов.