Поиск…


Синтаксис

  • wp_insert_post (массив $ args, bool $ wp_error);

параметры

параметр Описание
$ args (Требуется Array) Массив значения ключа из приведенных ниже элементов.
$ wp_error (Boolean Необязательно) Верните WP_Error в случае сбоя.

замечания


аргументы

В следующей таблице показан список элементов, которые можно использовать внутри первого параметра (Array).

параметр Описание
Я БЫ (Int) Идентификатор сообщения. Если значение равно чем 0, сообщение с этим идентификатором будет обновлено. По умолчанию 0.
post_author (Int) Идентификатор пользователя, который добавил сообщение. По умолчанию используется текущий идентификатор пользователя.
Дата публикации (String) Дата публикации. Значение по умолчанию - текущее время.
post_date_gmt (String) Дата публикации в часовой пояс GMT. Значение по умолчанию - значение $ post_date.
POST_CONTENT (Смешанный) Содержание сообщения. По умолчанию пустой.
post_content_filtered (String) Отфильтрованное содержимое сообщения. По умолчанию пустой.
Заголовок поста (String) Заголовок сообщения. По умолчанию пустой.
post_category (Массив) Массив значений категории публикации.
post_excerpt (String) Выдержка из сообщения. По умолчанию пустой.
post_status (String) Статус сообщения. Черновик по умолчанию.
post_type (String) Тип сообщения. Сообщение по умолчанию.
comment_status (String) Может ли почта принимать комментарии. Принимает открытые или закрытые. Значение по умолчанию - значение параметра default_comment_status.
ping_status (String) Может ли почта принимать пинги. Принимает открытые или закрытые. Значение по умолчанию - значение параметра default_ping_status.
post_password (String) Пароль для доступа к сообщению. По умолчанию пустой.
POST_NAME (String) Название сообщения или слизняк. Значение по умолчанию - это дезинфицированное название должности при создании нового сообщения.
to_ping (String) Пробел или список возвратов, разделенных возвратом, к URL-адресу для ping. По умолчанию пустой.
пингуется (String) Пробел или переадресованный список URL-адресов, которые были отсканированы. По умолчанию пустой.
post_modified (String) Дата последнего изменения сообщения. Значение по умолчанию - текущее время.
post_modified_gmt (String) Дата последнего изменения сообщения в часовой пояс GMT. Значение по умолчанию - текущее время.
post_parent (Int) Установите это для сообщения, к которому он принадлежит, если таковой имеется. По умолчанию 0.
menu_order (Int) Порядок, в котором должно отображаться сообщение. По умолчанию 0.
post_mime_type (String) Тип mime сообщения. По умолчанию пустой.
справ (String) Глобальный уникальный идентификатор для ссылки на сообщение. По умолчанию пустой.
tax_input (Массив) Массив таксономических терминов, определяемый их именем таксономии. По умолчанию пустой.
meta_input (Array) Массив значений post meta, определяемых их метатетом сообщения. По умолчанию пустой.

Избегайте дублированных сообщений

Когда вы выполняете эту функцию, вы, вероятно, можете получить дублированный пост, по крайней мере, это случилось со мной. (Вы можете проверить его в разделе Post WordPress)

Я нашел решение :

if( !get_page_by_title( $title, 'OBJECT', 'post' ) ){
    $my_post = array('post_title' => $title,
        'post_content' => 'Content',
        'tags_input' => $tags,
        'post_category' => array(2),
        'post_status' => 'publish'
    );

    $result = wp_insert_post( $my_post );
}

объяснение

Прежде чем сохранять новую запись, проверьте, существует ли новое сообщение, используя заголовок сообщения в качестве параметра, если нет заголовка сообщения, вы можете сохранить новое сообщение.

Проверьте документацию get_page_by_title в здесь .

Вступление

Иногда у нас есть другой редактор где-то в другом месте вместо TinyMCE (редактор Wordpress по умолчанию). Это происходит, когда мы создаем нашу собственную тему, плагин или что-то конкретное; и нам нужно писать и манипулировать типом сообщения и сохранять его в нашей базе данных WP.

Итак, если вы находитесь в этой ситуации, вы можете использовать функцию Wordpress, называемую:

wp_insert_post( array $args, bool $wp_error );

Создать основную должность

$basic_post_args = array(
    'post_title' => 'My Basic Post',
    'post_content' => 'This is a basic content',
    'post_status' => 'publish',
    'post_author' => 1,
    'post_category' => array(8, 59)
);

wp_insert_post( $basic_post_args );

Создание базовой страницы

$basic_page_args = array(
    'post_title' => 'My Basic Page',
    'post_content' => 'This is a basic content',
    'post_type' => 'page',
    'post_status' => 'publish',
    'post_author' => 1
);

wp_insert_post( $basic_page_args );


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow