- Laravel の Eloquent ORM をベースに、WordPress データベースから直接データを簡単に取得できるようにする PHP クラス集
- WordPress をバックエンドの管理パネルや CMS として使い、他の PHP アプリからそのデータをモデル層としてクエリできるようにする
- Laravel で Corcel を使うのが最も簡単だが、Composer を使うすべての PHP プロジェクトで利用可能
config/corcel.php 設定ファイルで、WordPress データベース接続やカスタム投稿タイプ、ショートコードの登録を簡単に行える
使用例
- Post::published()->get() で公開済みのすべての投稿を取得可能、Post::find(31) で特定の投稿を取得
- カスタム Post モデルクラスを作成して connection 名などをオーバーライドできる
- $post->meta->link でカスタムメタ値を取得
- saveMeta(), createMeta() メソッドでメタデータの作成と更新が可能
- hasMeta(), hasMetaLike() スコープでメタフィールドを基準に投稿を検索可能
- newest(), oldest() スコープで Post と User の並び替えが可能
- Post::type('video') のような type() メソッドやカスタムクラスで Custom Post Type を扱える
- config/corcel.php にショートコードと処理クラスをマッピング可能
- Post::addShortcode() メソッドでショートコードを追加
- ショートコードの解析には thunderer/shortcode ライブラリを使用
- $post->taxonomies() で特定の投稿のタクソノミーを取得
- Post::taxonomy() でタクソノミーから投稿を検索
- $page->attachment でページ/投稿の添付ファイルを取得
- $post->thumbnail で投稿/ページのサムネイルを取得
- Option::get('siteurl') でオプション値を取得
- Menu::slug('primary')->first() で特定のメニューを取得
- $menu->items でメニューアイテムのコレクションにアクセス
- $item->instance() で元のインスタンス(Page, Post, CustomLink, Term) を取得
- $item->parent() で親インスタンスを取得
- User::find(1) のように投稿と同様にユーザーも操作可能
1件のコメント
WP REST API、WPGraphQL、およびYiiフレームワーク向けのWordPressブリッジであるyii2-wordpressも同様に利用できます。