hollisho/wp-orm
Composer 安装命令:
composer require hollisho/wp-orm
包简介
Eloquent-like ORM for WordPress with read-write splitting and multisite support
README 文档
README
Eloquent-like ORM for WordPress with advanced features.
Features
- 🔗 Fluent Query Builder - Chain methods for elegant queries
- 📖 Read-Write Splitting - Separate read and write database connections
- 🌐 Multisite Support - Automatic table prefix handling for WordPress multisite
- 🔄 Relationships - HasOne, HasMany, BelongsTo, ManyToMany
- 📦 Collections - Powerful collection methods
- 🎯 Model Events - Hooks for creating, updating, deleting
- 🔍 Scopes - Reusable query constraints
Installation
composer require hollisho/wp-orm
Quick Start
use WPOrm\Model\Model; class Post extends Model { protected static string $table = 'posts'; public function author() { return $this->belongsTo(User::class, 'post_author'); } } // Query $posts = Post::where('post_status', 'publish') ->orderBy('post_date', 'desc') ->limit(10) ->get(); // Find by ID $post = Post::find(1); // Relationships $author = $post->author;
Configuration
Basic Setup
use WPOrm\Database\ConnectionManager; ConnectionManager::configure([ 'default' => 'mysql', 'connections' => [ 'mysql' => [ 'driver' => 'mysql', 'host' => DB_HOST, 'database' => DB_NAME, 'username' => DB_USER, 'password' => DB_PASSWORD, 'charset' => DB_CHARSET, 'prefix' => $GLOBALS['wpdb']->prefix, ] ] ]);
Read-Write Splitting
ConnectionManager::configure([ 'default' => 'mysql', 'connections' => [ 'mysql' => [ 'read' => [ 'host' => '192.168.1.2', ], 'write' => [ 'host' => '192.168.1.1', ], 'driver' => 'mysql', 'database' => DB_NAME, 'username' => DB_USER, 'password' => DB_PASSWORD, 'charset' => DB_CHARSET, 'prefix' => $GLOBALS['wpdb']->prefix, ] ] ]);
Multisite Support
// Automatically uses the correct table prefix for the current site $posts = Post::onSite(2)->where('post_status', 'publish')->get(); // Or use global tables $users = User::global()->get();
License
MIT
统计信息
- 总下载量: 56
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-11-05