En primer lugar, encuentra la ruta secreta a los recursos necesarios para crear tablas de bases de datos personalizadas. Con una guía paso a paso, seguro que aprenderás a crear estas tablas paso a paso. Por último, veremos cómo interactuar eficazmente con estas tablas de base de datos recién creadas para asegurarnos de que eres capaz de gestionar y utilizar estos datos sin problemas. Todo el proceso será recorrido en su totalidad, y tanto si eres un principiante como un desarrollador con algunos conocimientos básicos, obtendrás valiosos conocimientos y habilidades.
¿Por qué crear tablas de base de datos personalizadas?
La arquitectura de base de datos por defecto de WordPress puede manejar casi todos los tipos de necesidades de contenido. Registrando tipos de entrada personalizados y utilizando metadatos de entrada, podemos gestionar fácilmente la mayoría de nuestras necesidades de datos.
![Image[1] - Guía avanzada de WordPress: Creación y gestión de tablas de base de datos personalizadas - Photon Flux | Servicio profesional de reparación de WordPress, en todo el mundo, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/03/image-301.png)
Sin embargo, a veces nos encontramos con situaciones especiales en las que la arquitectura estándar no es suficiente.
En el caso de los sitios de comercio electrónico, los tipos de entrada personalizados son adecuados para los productos, ya que la información necesaria para una página de producto, como el título, la imagen y la descripción detallada, es prácticamente la misma que para una entrada normal. Si se necesita información adicional, también puede añadirse a través de los metadatos de la entrada.
Este no es el caso de los pedidos, que contienen información muy diferente a la de las entradas normales, por lo que sería más apropiado poner la información del pedido en una tabla personalizada de la base de datos.
En resumen, crear una tabla de base de datos personalizada propia es una buena opción cuando se necesita trabajar con datos que no encajan en el esquema de base de datos predeterminado.
Dónde encontrar información
Aunque la documentación para desarrolladores de WordPress no contiene nada sobre tablas de bases de datos personalizadas, existe una versión antigua de la documentación para desarrolladores llamada Codex que sí lo hace. Puede encontrarla en la secciónCreación de tablas con pluginspara encontrar toda la información sobre las tablas de bases de datos personalizadas.
Creación de tablas de base de datos personalizadas
![Imagen [2] - Guía avanzada de WordPress: Creación y gestión de tablas de base de datos personalizadas - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/03/image-369-1024x585.png)
Lo primero que notarás es que esto suele hacerse en un plugin.
Además, es posible y recomendable utilizar funciones para crear personalizaciones al activar el pluginregistrar_gancho_activación un metro (para medir algo).
Esto permite que esta función se ejecute una vez, en lugar de cada vez que se carga el plugin.
Crear tabla
Para crear tablas personalizadas activadas por plugins, necesitas usar algunas cosas.
En primer lugar, cree una función para gestionar la creación de tablas:
function wp_learn_create_database_table() {
}
A continuación, debe utilizar la función$wpdbsituación de seguridadObjetos de base de datos de WordPressporque contiene todos los métodos necesarios para interactuar con la base de datos.
Esto le permitirá establecer un nuevo nombre de tabla utilizando el prefijo de la base de datos de WordPress.
function wp_learn_create_database_table() {
function wp_learn_create_database_table() { global $wpdb.
$table_name = $wpdb->prefix . 'custom_table';
}
También le permite acceder alget_charset_collatemetodologíasel método devolverá el juego de caracteres y las reglas de ordenación correctas para la base de datos.
$charset_collate = $wpdb->get_charset_collate();
Para crear tablas, es necesario entender SQL para poder ejecutar sentencias SQL en la base de datos. Esto se hace mediante la funcióndbDelta función (matem.)Hecho.dbDeltaEsta función se utiliza normalmente durante una actualización de WordPress si es necesario actualizar o cambiar la tabla predeterminada de WordPress. Comprueba la estructura de tablas actual, la compara con la estructura de tablas deseada y añade o modifica tablas según sea necesario.
![Imagen [3] - Guía avanzada de WordPress: Creación y gestión de tablas de base de datos personalizadas - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/03/image-370-1024x585.png)
Para utilizardbDeltaHay que escribir las sentencias SQL de una manera específica.
Puede encontrarlo en CodexCrear o actualizar formularios de la página para obtener más información sobre estos requisitos.
Después de crear la sentencia SQL, hay que pasarla a la funcióndbDelta. Para ello se incluyewp-admin/includes/upgrade.phpLo hace el archivo que contiene la declaración de la función.
function wp_learn_create_database_table() {
function wp_learn_create_database_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,
time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
name tinytext NOT NULL,
text text NOT NULL, url varchar(55)
url varchar(55) DEFAULT '' NOT NULL, PRIMARY KEY (id)
PRIMARY KEY (id)
) $charset_collate;";
require_once ABSPATH . wp-admin/includes/upgrade.php';
dbDelta( $sql );
}
En este ejemplo, se crea una nueva tabla denominadatabla_personalizadaTiene 5 campos: un Tiene 5 campos: an ida tiempoa nombreatextoy un url. Sí.idNúmero entero autoincrementado, sítiempoCampo Fecha Hora, Sínombrecampo tinytext, sítextoCampo de texto,urles un campo varchar. Esteides la clave primaria.
Enganchando esta función en el hook de activación del plugin te asegurarás de que la tabla se crea cuando se activa el plugin.
register_activation_hook( __FILE__, 'wp_learn_create_database_table' ).
insertar datos
También puedes utilizar ganchos de activación de plugins para insertar datos en la tabla cuando se active el plugin.
Para ello, puede utilizar el objetoinsertarmetodologías$wpdbpasa un array con los nombres y valores de los campos a insertar.
He aquí un ejemplo.
register_activation_hook( __FILE__, 'wp_learn_insert_record_into_table' );
function wp_learn_insert_record_into_table(){
function wp_learn_insert_record_into_table(){ global $wpdb.
$table_name = $wpdb->prefix . 'custom_table';
$wpdb->insert(
1TP4Nombre_tabla,
array(
'time' => current_time( 'mysql' ),
'name' => 'John Doe',
'text' => '¡Hola Mundo!
url' => 'https://wordpress.org'
)
);
}
Datos actualizados
Para actualizar los datos de una tabla personalizada, utilice la funciónactualizaciónMétodos de este objeto$wpdbpasando un array de nombres de campo y valores a actualizar, y un array de nombres de campo y valores a utilizar para encontrar los registros a actualizar.
function wp_learn_update_record_in_table() {
global $wpdb.
$table_name = $wpdb->prefix . 'custom_table';
$wpdb->actualizar(
1TP4Nombre_tabla,
array(
'time' => current_time( 'mysql' ),
'name' => 'Jane Doe',
'text' => '¡Hola Planeta!
'url' => 'https://wordpress.org'
),
array( 'id' => 1 )
);
}
En este ejemplo, el registro con id 1 se actualizará con el nuevo valor.
Seleccionar datos
Utilización de objetosobtener_resultadospara seleccionar datos de una tabla personalizada$wpdb.obtener_resultadosSe aceptará una sentencia SELECT SQL válida.
function wp_learn_select_records_from_table() {
global $wpdb.
$table_name = $wpdb->prefix . 'custom_table';
$results = $wpdb->get_results( "SELECT * FROM $table_name" );
foreach ( $results as $result ) {
echo $result->nombre . ' . $result->texto . '<br>';
}
}
Por defecto, get_results devuelve una matriz de objetos que puede recorrer y acceder a los campos de fila como propiedades.
limpiar
También es posible eliminar los formularios personalizados. Para ello, puede utilizar la funciónconsultaMétodos de este objeto$wpdbpara pasar una sentencia SQL para eliminar la tabla.
function wp_learn_delete_table() {
global $wpdb.
$table_name = $wpdb->prefix . 'custom_table';
$wpdb->query( "DROP TABLE IF EXISTS $table_name" );
}
debeconsultaejecutará cualquier consulta SQL válida, pero es mejor utilizarlo sólo para consultas que no inserten o actualicen datos, ya que esta función no realiza ninguna limpieza de la consulta.
Dependiendo de sus necesidades o de las necesidades del usuario del plugin, puede eliminar tablas de dos maneras.
Si los usuarios de su plugin no necesitan los datos de esta tabla después de desactivar el plugin, puede añadir los datos en la tablaGancho de desactivación de pluginsActivar esta acción en el
register_deactivation_hook( __FILE__, 'wp_learn_delete_table' ).
Sin embargo, si los datos de esa tabla son importantes y sus usuarios pueden querer conservarlos, incluso si el plugin está desactivado, puede utilizar la función disponible en el pluginDos métodos de desinstalaciónUno de ellos borra la tabla.
Por ejemplo, si decide utilizarregister_uninstall_hook.
register_uninstall_hook( __FILE__, 'wp_learn_delete_table');
También puede dejar la tabla como está y dejar que el usuario decida qué hacer con ella.
Por lo general, se recomienda consultar a los usuarios al desinstalar el plugin si desean conservar la tabla y, a continuación, utilizar uno de los métodos de desinstalación.
alcanzar un veredicto
Este tutorial sólo te ha dado una rápida visión general de los fundamentos de las tablas personalizadas. En futuros tutoriales, profundizaremos en cómo aplicar estas técnicas en proyectos reales.
| Contacte con nosotros | |
|---|---|
| ¿No puede leer el tutorial? Póngase en contacto con nosotros para obtener una respuesta gratuita. Ayuda gratuita para sitios personales y de pequeñas empresas |
Servicio de atención al cliente WeChat
|
| ① Tel: 020-2206-9892 | |
| ② QQ咨询:1025174874 | |
| (iii) Correo electrónico: info@361sale.com | |
| ④ Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres | |
Enlace a este artículo:https://www.361sale.com/es/6584El artículo está protegido por derechos de autor y debe ser reproducido con atribución.






















![Emoji[wozuimei]-Photonflux.com | Servicio profesional de reparación de WordPress, en todo el mundo, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/wozuimei.gif)
![Emoticono [baoquan] - Photon Wave Network | Servicios profesionales de reparación de WordPress, cobertura mundial, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/baoquan.gif)

Sin comentarios