it-swarm.com.ru

Вставить данные в таблицу `post meta '?

Как я смогу вставить данные в мета-таблицу публикаций? Я знаю, как работает запрос и wpdb, но я понятия не имею, как я могу просто вставить его в таблицу.

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

Правка: Я не уверен, если это должна быть мета-таблицы сообщений, но пока появляется новый пользовательский тип сообщения.

Заранее спасибо!

1
David H

Вам не нужно использовать post_meta здесь, так как вся информация доступна в posts.

Чтобы вставить новый пост, используйте wp_insert_post( $post ) и передайте аргументы в ваш массив $post-. Эта функция может возвращать объект WP_Error- для обработки ошибок (если второй аргумент имеет значение true, возвращает 0 при ошибке, если false) и возвращает ID вставленной записи.

Смотрите полный список аргументов для wp_insert_post() в Кодексе .

$post = array(
    'post_content'   => $content, // The content you want to have set in the content
    'post_title'     => $title, // The title of your post.
    'post_status'    => 'publish', // Whatever status you want to have
    'post_type'      => 'your_custom_post_type' // the slug of your custom post type
); 

$thisid = wp_insert_post( $post, true ); // insert the post and allow WP_Error object

if ( is_wp_error( $thisid ) ) {
    // Error handling
} else {
    // the rest of your code, inserting metadata
    update_post_meta( $thisid, 'your_meta_key', $your_meta_value );
}
5
fischi

Вы можете выполнить любой запрос следующим образом и проверить успешность. Дайте мне знать, если он работает.

Praveen

$InsertQuery = "INSERT INTO post_meta VALUES (Enter Values Here)";

//Create a query named InsertQuery

$insert = $wpdb->query($InsertQuery);

//Execute InsertQuery

if($wpdb->insert_id){
    echo 'Post Entered Successfully.';
}else{
    echo 'Unable to Insert Post.';
}

//Check if the Query has run successfully
1
Praveen