Guardar compras de Woocommerce en base de datos personalizada

Preparamos la base de datos

Ahora vamos a crear las columnas de la base de datos en minúsculas, se tiene que ver tal que así:

correoserialfecha

-

-

-

Explicación

Explicación de como tienen que ser las columnas, al crearlas, serían así:

NombreTipo de datosLongitudCollationPermitir NULL

correo

VARCHAR

100

utf8mb4

Si

serial

fecha

Ahora pegamos este código en functions.php

Opción 1: Normalmente se encuentra en wp-content/themes/NOMBRE_TEMA/functions.php
Opción 2: TU_PÁGINA/wp-admin: Apariencia (Columa izquierda)/Editor de archivos de temas/functions.php (En la columna derecha)

				
					add_action('woocommerce_thankyou', 'custom_query_on_purchase');

function custom_query_on_purchase($order_id) {
    if (!$order_id) return;

    // Obtén el pedido----
    $order = wc_get_order($order_id);

    // Obtén los datos necesarios del pedido
    $order_data = $order->get_data();
    $usuario = $order_data['billing']['email'];
    
    // Genera una cadena serial de 10 dígitos
    $serial = substr(md5(uniqid(rand(), true)), 0, 32);

    // Conéctate a la base de datos de WordPress
    global $wpdb;

    // Define la tabla personalizada (asegúrate de haberla creado)
    $table_name = 'facturas';

    // Inserta los datos en la tabla personalizada
    $wpdb->insert(
        $table_name,
        array(
            'correo'     => $usuario,
            'serial'      => $serial,
            'fecha'       => current_time('mysql')
        )
    );
}
				
			

Finalmente

Ya podrás almacenar tus compras en una base de datos personalizada

Artículos destacados