morningtrain / wp-database
Laravel Eloquent and Migrations for WordPress
v0.3.0
2023-11-09 10:58 UTC
Requires
- doctrine/dbal: ^3.6
- illuminate/database: ^8.83|^9.5
- illuminate/events: ^8.83|^9.5
- illuminate/filesystem: ^8.83|^9.5
- illuminate/pagination: ^8.83|^9.5
- morningtrain/php-loader: ^0.3.3
README
A Morningtrain package that implements Laravel Eloquent and Migrations into WordPress.
Table of Contents
Introduction
Getting Started
To get started install the package as described below in Installation.
To use the tool have a look at Usage
Installation
Install with composer
composer require morningtrain/wp-database
Dependencies
illuminate/database
Usage
Initializing package
<?php Database::setup(__DIR__ . "/database/migrations");
If you want to use migrations from multiple directories you can do, by calling the setup method multiple times.
Creating a Model
In app/Models
// Foo.php <?php namespace MyProject\App\Models; /** * @property int $id * @property string $title */ class Foo extends \Illuminate\Database\Eloquent\Model { public $timestamps = false; protected $table = 'foo'; }
Creating a Migration
wp make:migration create_foo_table
If there is multiple migration paths, you will be asked to choose one.
Will create a new migration file for you with Schema::create('foo')
already prepared.
Running migrations
You can run all new migrations like so:
Using wp cli
:
wp dbmigrate
Using php
:
<?php \Morningtrain\WP\Database\Database::migrate(); ?>
Credits
Testing
composer test
License
The MIT License (MIT). Please see License File for more information.