Buscar..


Sintaxis

  • wp_insert_post (array $ args, bool $ wp_error);

Parámetros

Parámetro Descripción
$ args (Array Required) Una matriz de valores clave de los siguientes elementos.
$ wp_error (booleano opcional) Devuelve un error WP_Error en caso de fallo.

Observaciones


Argumentos

La siguiente tabla muestra una lista de elementos que puede usar dentro del primer parámetro (Array).

Parámetro Descripción
CARNÉ DE IDENTIDAD (Int) El ID de la publicación. Si es igual a algo distinto de 0, la publicación con esa ID se actualizará. Por defecto 0.
post_autor (Int) El ID del usuario que agregó la publicación. El valor predeterminado es el ID de usuario actual.
posfechar (Cadena) La fecha de la publicación. El valor predeterminado es la hora actual.
post_date_gmt (Cadena) La fecha de la publicación en la zona horaria GMT. El valor predeterminado es el valor de $ post_date.
Publicar Contenido (Mixto) El contenido del post. Predeterminado vacío.
post_content_filtered (Cadena) El contenido del post filtrado. Predeterminado vacío.
título de la entrada (Cadena) El título del post. Predeterminado vacío.
post_category (Array) Array de valores de categoría de entrada.
post_excerpt (String) El extracto del post. Predeterminado vacío.
post_status (Cadena) El estado de la publicación. Proyecto por defecto.
tipo de mensaje (Cadena) El tipo de publicación. Publicación por defecto.
comment_status (Cadena) Si la publicación puede aceptar comentarios. Acepta abierto o cerrado. El valor predeterminado es el valor de la opción default_comment_status.
estado de ping (Cadena) Si la publicación puede aceptar pings. Acepta abierto o cerrado. El valor predeterminado es el valor de la opción default_ping_status.
post_password (Cadena) La contraseña para acceder a la publicación. Predeterminado vacío.
Nombre del puesto (Cadena) El nombre de la publicación o slug. El valor predeterminado es el título de la publicación saneada al crear una nueva publicación.
to_ping (Cadena) Espacio o lista de direcciones URL separadas por retorno de carro para hacer ping. Predeterminado vacío.
hizo ping (Cadena) Lista de direcciones URL a las que se ha hecho ping. Predeterminado vacío.
post_modificado (Cadena) La fecha en que se modificó por última vez la publicación. El valor predeterminado es la hora actual.
post_modified_gmt (Cadena) La fecha en que la publicación se modificó por última vez en la zona horaria GMT. El valor predeterminado es la hora actual.
post_parente (Int) Establezca esto para la publicación a la que pertenece, si corresponde. Por defecto 0.
menu_order (Int) El orden en que se debe mostrar la publicación. Predeterminado 0.
post_mime_type (Cadena) El tipo mime de la publicación. Predeterminado vacío.
guid (Cadena) ID única global para hacer referencia a la publicación. Predeterminado vacío.
tax_input (Array) Array de términos de taxonomía marcados por su nombre de taxonomía. Predeterminado vacío.
meta_input (Array) Array de valores de metadatos de entrada codificados por su clave de metadatos de publicación. Predeterminado vacío.

Evitar publicaciones duplicadas

Cuando ejecute esta función, probablemente podría obtener una publicación duplicada, al menos eso me pasó a mí. (Puedes comprobarlo en la sección Publicar WordPress)

Encontré una solución :

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 );
}

Explicación

Antes de guardar una nueva publicación, valide si la nueva publicación ya existe usando el título de la publicación como un parámetro, si no hay un título de la publicación, puede guardar su nueva publicación.

Consulte la documentación de get_page_by_title aquí .

Introducción

A veces tenemos otro editor en otro lugar en lugar de TinyMCE (Wordpress Default Editor). Eso sucede cuando estamos creando nuestro propio tema, complemento o algo específico; y necesitamos escribir y manipular un tipo de publicación y guardarla en nuestra base de datos WP.

Entonces, si estás en esa situación, puedes usar una función de WordPress llamada:

wp_insert_post( array $args, bool $wp_error );

Crear una publicación básica

$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 );

Crear una página básica

$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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow