А как отправить текст из Формы в базу данных в ВордПресс

Для отправки текста из формы в базу данных WordPress можно использовать несколько подходов. Один из наиболее распространенных вариантов — это создание кастомной формы с помощью PHP и использование функции WordPress для обработки данных.

Шаги для отправки текста из формы в базу данных:

  1. Создайте форму HTML: В вашем шаблоне WordPress (например, в файле page.php) добавьте HTML-форму. Например:
<form method="POST" action="">
    <label for="text_input">Введите текст:</label>
    <input type="text" name="text_input" id="text_input" required>
    <input type="submit" value="Отправить">
</form>

Обработайте отправленные данные с помощью PHP: В файле темы (например, functions.php или в том же page.php) нужно добавить обработчик, который будет сохранять данные в базу данных.

if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['text_input'])) {
    global $wpdb;
    $table_name = $wpdb->prefix . 'custom_table';  // Название вашей таблицы
    $text_input = sanitize_text_field($_POST['text_input']);  // Очистка данных для безопасности

    // Вставка данных в таблицу
    $wpdb->insert(
        $table_name,
        array(
            'text_column' => $text_input,  // Название колонки и значение
        )
    );
}

В этом коде используется функция sanitize_text_field(), которая очищает пользовательский ввод для безопасности.

Создайте таблицу в базе данных (если её нет): Если вы еще не создали таблицу для хранения данных, то это можно сделать через функцию register_activation_hook для создания таблицы при активации плагина/темы:

function create_custom_table() { global $wpdb; $table_name = $wpdb->prefix . 'custom_table'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table_name ( id mediumint(9) NOT NULL AUTO_INCREMENT, text_column text NOT NULL, PRIMARY KEY (id) ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } register_activation_hook( __FILE__, 'create_custom_table' );

Проверьте работу формы: Теперь, когда форма отправляется, текстовое значение будет сохраняться в указанной таблице базы данных.

Дополнительные возможности:

  • Для вывода сохраненных данных из базы данных можно использовать функции WordPress, такие как $wpdb->get_results(), для получения данных из таблицы и их отображения на сайте.
  • Также можно добавить валидацию и уведомления о том, что данные успешно сохранены.