Insertar publicación de wordpress a través de un error fatal de php

Cuando quiero usar wp_insert_post ($ mi_publicación); función me sale el siguiente error:

Error fatal: no se puede volver a declarar create_initial_post_types() (anteriormente declarado en /home/izradawe/public_html/mydomain.com/wp-includes/post.php:20) en /home/izradawe/public_html/mydomain.com/wp-includes/post .php en la línea 152

¿Me puede ayudar con esto?

Código que estoy usando:

  include_once('../wp-load.php');
  include("../wp-includes/post.php");

  // Creating post
  $my_post = array(
     'post_title' => 'My post',
     'post_content' => 'This is my post.',
     'post_status' => 'publish',
     'post_author' => 1,
     'post_category' => 5,
     'post_type' => 'post'
  );

  // Insert the post into the database
  wp_insert_post( $my_post );

preguntado el 03 de mayo de 12 a las 11:05

¿Qué tipo de archivo usas para incluir esto? ¿Es un tema o un plugin? De todos modos, estás haciendo algo mal.

Quiero crear un "panel administrativo" separado en el que alguien pueda agregar una nueva publicación a mi sitio de wordpress, sé que algo está mal, porque estoy pidiendo ayuda. -

Por lo tanto, está creando un backend completamente separado de /wp-admin? -

sí, en el backend completamente separado, creé un formulario con el que el administrador puede hacer una nueva publicación, y quiero usar las funciones wp_insert_post ($ my_post) para crear una nueva publicación, pero arroja el error mencionado anteriormente. -

3 Respuestas

Para acceder a las funciones principales de Wordpress, intente:

<?php
include '../wp-blog-header.php';
$my_post = array(
  'post_title' => 'My post',
  'post_content' => 'This is my post.',
  'post_status' => 'publish',
  'post_author' => 1,
  'post_category' => 5,
  'post_type' => 'post'
);
wp_insert_post( $my_post );
?>

contestado el 03 de mayo de 12 a las 17:05

Si escribe el código dentro de single.php o index.php o cualquier archivo de plantilla dentro del directorio de plantillas, no es necesario incluir el archivo wp-load.php o post.php

contestado el 03 de mayo de 12 a las 11:05

No escribo código dentro de single.php o index.html, estoy escribiendo dentro de un panel administrativo separado que estoy tratando de hacer. - Zoran Đukić

Cree una página de plantilla con la función de código wp_insert_post dentro del directorio de plantillas de wordpress y pase todos sus parámetros a esa página: Pablo Gaurab

Puse esa página php en la carpeta de plantillas de wordpress pero obtuve el mismo error fatal. - Zoran Đukić

cree una página de plantilla y coloque su código allí, aquí está la referencia: codex.wordpress.org/Páginas - Pablo Gaurab

Cambiar include dentro include_once.

Respondido el 02 de junio de 19 a las 11:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.