Generador CRUD de BD (Tablas Personalizadas)
Este generador crea un stack CRUD completo para una tabla de base de datos personalizada de WordPress utilizando $wpdb: un instalador (dbDelta + actualizaciones versionadas), un repositorio (crear/leer/actualizar/eliminar/listar) y un controlador REST API opcional. Haga clic en Generar para obtener código listo para copiar y pegar.
- Complete el formulario
- Haga clic en Generar (copia automática)
- Pegue en my-plugin.php, comprímalo, súbalo
- Ideal para datos que no deben residir en wp_posts/wp_postmeta (registros, colas, tickets, picking, tablas de sincronización, etc.).
- Incluye valores predeterminados seguros: lista blanca de columnas, consultas preparadas y verificaciones de actualización.
- Siempre realice una copia de seguridad de su base de datos antes de implementar cambios en el esquema.
Se utiliza para construir nombres de clases y la base de la ruta REST.
ticket
→ REST: /ticket, Clases PHP: Ticket_Repository
El sufijo del nombre de la tabla. El prefijo de WordPress se añade automáticamente mediante $wpdb->prefix.
my_plugin_tickets
→ Tabla real: wp_my_plugin_tickets (o wp_2_... en multisitio)
El espacio de nombres de la API REST utilizado bajo /wp-json/{namespace}/...
my-plugin/v1
→ Base: /wp-json/my-plugin/v1/ticket
Los usuarios deben tener esta capacidad para crear/actualizar/eliminar mediante REST. Las lecturas son públicas por defecto.
manage_options
→ Escrituras solo para administradores
Almacenada en wp_options para rastrear la versión del esquema instalado y ejecutar actualizaciones de forma segura.
my_plugin_db_version
→ Utilizada por Installer::maybe_upgrade()
Constante utilizada como la “versión objetivo” para las actualizaciones del esquema (generalmente su constante de versión del plugin).
MY_PLUGIN_VERSION
→ Cuando la versión cambia, las actualizaciones del esquema pueden ejecutarse
Working with custom database tables in WordPress often requires writing a lot of repetitive code: table creation with dbDelta(), versioning logic, upgrade routines, and basic CRUD operations using $wpdb.
The Database CRUD Generator helps you generate a clean, structured foundation for custom database tables, including dbDelta table creation, versioned upgrades, and CRUD helper methods, so you can focus on your business logic instead of boilerplate.
Why Use Custom Database Tables in WordPress?
While WordPress post types and meta tables work well for many use cases, some scenarios require custom tables for performance, structure, or scalability reasons, such as:
- Large datasets or logs
- Complex relationships
- High-frequency writes
- Reporting and analytics
- Internal tools and integrations
Using custom tables gives you full control over schema design and query performance.
What This Database CRUD Generator Creates
This generator outputs developer-ready boilerplate that typically includes:
- A
dbDelta()SQL schema for table creation - Proper charset and collation handling
- A table version constant
- Activation hook logic
- Upgrade logic when the table schema changes
- A structured
$wpdbhelper class with:create()get()get_all()update()delete()
The generated code follows WordPress best practices and can be pasted directly into your plugin.
dbDelta + Upgrade Logic
One of the most error-prone parts of custom tables is handling schema changes over time.
This generator includes:
- A versioned table schema
- Automatic upgrade logic triggered on plugin update
- Safe use of
dbDelta()to apply changes without dropping data
This makes it easier to maintain database changes across plugin versions.
How to Use the Database CRUD Generator
- Define your table name and database prefix usage.
- Add table columns and data types.
- Specify primary keys and indexes.
- Generate the code.
- Copy the generated output into your plugin.
The output is displayed in a readable code editor (CodeMirror) and can be copied instantly.
Best Practices When Using Custom Tables
- Always use
$wpdb->prepare()for dynamic queries. - Keep table schemas simple and well indexed.
- Version your schema to support upgrades.
- Avoid direct SQL in multiple places — centralize it in a helper class.
- Test table creation and upgrades on staging environments.
Who Is This Tool For?
The Database CRUD Generator is intended for:
- WordPress plugin developers
- Teams building internal tools
- Projects requiring structured or high-volume data storage
- Developers who want consistent and maintainable database code
If you find yourself repeatedly writing dbDelta() logic and CRUD helpers, this tool can save you significant time.
