- ชุดคลาส PHP ที่ช่วยให้ดึงข้อมูลจากฐานข้อมูล WordPress ได้โดยตรงอย่างง่ายดาย โดยอิงกับ Eloquent ORM ของ Laravel
- ใช้ WordPress เป็นแผงผู้ดูแลระบบฝั่งแบ็กเอนด์หรือเป็น CMS และให้แอป PHP อื่น ๆ สามารถคิวรีข้อมูลนั้นในชั้นโมเดลได้
- การใช้งาน Corcel กับ Laravel เป็นวิธีที่ง่ายที่สุด แต่ก็สามารถใช้ได้กับทุกโปรเจกต์ PHP ที่ใช้ Composer
- ในไฟล์ตั้งค่า
config/corcel.php สามารถตั้งค่าการเชื่อมต่อฐานข้อมูล WordPress และลงทะเบียน custom post type กับ shortcode ได้อย่างง่ายดาย
ตัวอย่างการใช้งาน
- ใช้
Post::published()->get() เพื่อดูโพสต์ที่เผยแพร่แล้วทั้งหมด และใช้ Post::find(31) เพื่อดูโพสต์เฉพาะรายการ
- สามารถสร้างคลาสโมเดล Post แบบกำหนดเองเพื่อ override ชื่อ connection เป็นต้น
- ใช้
$post->meta->link เพื่อดูค่า custom meta
- เมธอด
saveMeta(), createMeta() ใช้สร้างและอัปเดตเมทาดาทา
- สามารถค้นหาโพสต์ตามฟิลด์ meta ได้ด้วยสโคป
hasMeta(), hasMetaLike()
- จัดเรียง Post และ User ได้ด้วยสโคป
newest(), oldest()
- สามารถจัดการ Custom Post Type ได้ด้วยเมธอด
type() เช่น Post::type('video') หรือใช้คลาสแบบกำหนดเอง
- ใน
config/corcel.php สามารถแมป shortcode กับคลาสตัวประมวลผลได้
- เพิ่ม shortcode ได้ด้วยเมธอด
Post::addShortcode()
- การแปลง shortcode ใช้ไลบรารี
thunderer/shortcode
- ใช้
$post->taxonomies() เพื่อดู taxonomy ของโพสต์นั้น
- ใช้
Post::taxonomy() เพื่อค้นหาโพสต์ด้วย taxonomy
- ใช้
$page->attachment เพื่อดูไฟล์แนบของเพจ/โพสต์
- ใช้
$post->thumbnail เพื่อดู thumbnail ของโพสต์/เพจ
- ใช้
Option::get('siteurl') เพื่อดูค่า option
- ใช้
Menu::slug('primary')->first() เพื่อดูเมนูที่ต้องการ
- เข้าถึงคอลเลกชันรายการเมนูได้ผ่าน
$menu->items
- ใช้
$item->instance() เพื่อดูอินสแตนซ์ต้นฉบับ (Page, Post, CustomLink, Term)
- ใช้
$item->parent() เพื่อดูอินสแตนซ์แม่
- จัดการผู้ใช้ได้ในลักษณะคล้ายกับโพสต์ เช่น
User::find(1)
1 ความคิดเห็น
WP REST API, WPGraphQL และ
yii2-wordpressซึ่งเป็น WordPress bridge ของ Yii framework ก็สามารถใช้งานได้ในลักษณะเดียวกัน