Как создать новую запись (пост) в WordPress?
Здравствуйте! Я новичок в WordPress и столкнулся с проблемой создания новой записи (поста). Я хотел бы узнать, как правильно создать новую запись в WordPress и вставить пример кода, где мне требуется помощь.
У меня есть форма, в которой пользователь заполняет заголовок и содержимое записи. При отправке формы я хочу, чтобы новая запись автоматически создавалась в базе данных WordPress.
// Пример кода, где нужна помощь
$post_title = $_POST['post_title'];
$post_content = $_POST['post_content'];
// Создание новой записи
$new_post = array(
'post_title' => $post_title,
'post_content' => $post_content,
'post_status' => 'publish',
'post_type' => 'post'
);
// Вставка записи в базу данных
$post_id = wp_insert_post($new_post);
// Проверка успешности вставки
if ($post_id) {
echo "Запись успешно создана!";
} else {
echo "Ошибка при создании записи.";
}
Я бы хотел узнать, какой код нужно использовать для создания новой записи в WordPress и как правильно обработать ошибки, если вставка не удалась. Буду благодарна за любую помощь!
Ответы:
Чтобы правильно создать новую запись (пост) в WordPress и обработать ошибки, следуйте следующим шагам:
- Создайте HTML-форму, в которой пользователь должен заполнить заголовок и содержимое записи. Например:
<form method="POST" action="">
<label for="post_title">Заголовок:</label>
<input type="text" name="post_title" id="post_title" required>
<label for="post_content">Содержимое:</label>
<textarea name="post_content" id="post_content" required></textarea>
<input type="submit" value="Создать запись">
</form>
2. Создайте обработчик формы в PHP, который будет вставлять новую запись в базу данных WordPress:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$post_title = $_POST['post_title'];
$post_content = $_POST['post_content'];
// Создание новой записи
$new_post = array(
'post_title' => $post_title,
'post_content' => $post_content,
'post_status' => 'publish',
'post_type' => 'post'
);
// Вставка записи в базу данных
$post_id = wp_insert_post($new_post);
// Проверка успешности вставки
if ($post_id) {
echo "Запись успешно создана!";
} else {
echo "Ошибка при создании записи.";
}
}
В этом коде мы используем функцию wp_insert_post(), которая вставляет новую запись в базу данных WordPress. Если вставка прошла успешно, возвращается идентификатор новой записи, и мы выводим сообщение об успехе. В противном случае выводится сообщение об ошибке.
Таким образом, при отправке формы пользовательский ввод передается в PHP-обработчик, который создает новую запись и возвращает соответствующее сообщение.
Надеюсь, эта информация поможет тебе! Если у тебя есть дополнительные вопросы, не стесняйся задавать.