Intereting Posts
Как защитить часть моего кода от модификации TinyMCE при переключении с текстового на визуальный? Ограничить CSS на одной странице Что не так с моим wp-запросом, не могу исключить категорию, которую я хочу Сериализация данных для опций wp как проверить, используется ли короткий код более одного раза в том же сообщении Какой ответ callback имеет приоритет, если оба плагина и темы используют один и тот же крючок? Возможность просматривать (не редактировать) информацию личного профиля другого пользователя Как настроить настраиваемый шаблон страницы для настраиваемого типа сообщений? Как я могу контролировать содержание моих страниц? Не получать электронные письма после нового комментария do_shortcode () не работает, если shortcode содержится в переменной, работает, если короткий код передан как строка Смутно настраивать виджеты CPT с числовой пулей Лучший способ отключить боковые панели на сообщениях (только)? Пользовательское поле WordPress Цвета

wp_insert_post работает, но сообщение не отображается в списке сообщений администратора или в интерфейсе

Я пытаюсь создать страницу на сайте во время активации плагина. Код работает без ошибок, и вызов функции возвращает идентификатор сообщения, но когда я проверяю список страниц в области администратора, там ничего нет. WordPress обнаруживает их, как будто я иду в пункт меню страниц, число uinder All () увеличилось, но количество опубликованных страниц не было.

$postarr["post_content"] = "[submission_widget]"; $postarr["post_title"] = "Submit Content"; $postarr["post_status"] = "published"; $postarr["post_type"] = "page"; $postarr["post_name"] = sanitize_title("Submit Content"); $postarr["post_date_gmt"] = date('Ymd H:i:s', time()); $postarr["post_date"] = date('Ymd H:i:s', time()); $postarr["post_modified"] = date('Ymd H:i:s', time()); $postarr["post_modified_gmt"] = date('Ymd H:i:s', time()); $postid = wp_insert_post($postarr, true); update_post_meta( $postid, '_visibility', 'visible' ); 

Чтобы дважды проверить, я вошел в таблицу сообщений в БД, и я вижу, что сообщение есть. Я не вижу в этом ничего плохого, но чего-то явно не хватает. Где я иду не так?

Solutions Collecting From Web of "wp_insert_post работает, но сообщение не отображается в списке сообщений администратора или в интерфейсе"

Проблема заключается в $postarr["post_status"] = "published"; вы должны изменить его на

 $postarr["post_status"] = "publish"; // Set it to 'publish', not 'published' 

Теперь это немного не соответствует теме, но вы можете опустить следующие (созданные по wp_insert_post() ):

 $postarr["post_date_gmt"] = date('Ymd H:i:s', time()); $postarr["post_date"] = date('Ymd H:i:s', time()); $postarr["post_modified"] = date('Ymd H:i:s', time()); $postarr["post_modified_gmt"] = date('Ymd H:i:s', time());