你有想過可以在 WordPress 中使用 Laravel 或任一 PHP 框架嗎??Corcel?可以幫你實(shí)現(xiàn)!
開發(fā)網(wǎng)站應(yīng)用程式就應(yīng)該是快速且有趣的。當(dāng)然了,每個(gè)應(yīng)用都會(huì)有它自己的需求和生命週期。
WordPress 是基於 PHP 編寫的強(qiáng)大的 CMS,你可以使用它非常快速的創(chuàng)造你的產(chǎn)品。然而,它並沒有遵循最近 PHP 的變化和約定,但你可以將它與其他類似 Laravel 這樣的框架一起使用來平衡這一點(diǎn)。
Corcel
我認(rèn)為 WordPress 的後臺(tái)管理面板很棒。它有一堆插件,可以讓你快速地產(chǎn)生字段,文章類型,圖片,作物等等。這真的很棒!
這就是為什麼有了?Corcel?,它可以輕鬆地讓你從 WordPress 資料庫取得資料。你只需要使用 Composer 在你的 PHP 應(yīng)用程式框架( Laravel 或其他框架)中安裝 WordPress 和 Corcel 就可以了。
當(dāng)然我們也可以在 WordPress 中使用 MVC !
你可以為你的 WordPress 建立控制器、模型和視圖。 Corcel 為你創(chuàng)建了一個(gè)模型集合來檢索文章、頁面和選單等,甚至可以連接不同的資料庫,一個(gè)用於 Laravel ,另一個(gè)用於 WordPress 。
<?php // File: /config/database.php 'connections' =>?[ ????'mysql'?=>?[ ????????'driver'????=>?'mysql', ????????'host'??????=>?'localhost', ????????'database'??=>?'app', ????????'username'??=>?'admin' ????????'password'??=>?'secret', ????????'charset'???=>?'utf8', ????????'collation'?=>?'utf8_unicode_ci', ????????'prefix'????=>?'', ????????'strict'????=>?false, ????????'engine'????=>?null, ????], ????'wordpress'?=>?[ ????????'driver'????=>?'mysql', ????????'host'??????=>?'localhost', ????????'database'??=>?'corcel', ????????'username'??=>?'admin', ????????'password'??=>?'secret', ????????'charset'???=>?'utf8', ????????'collation'?=>?'utf8_unicode_ci', ????????'prefix'????=>?'wp_', ????????'strict'????=>?false, ????????'engine'????=>?null, ????], ???? ],
下面開始從WordPress 資料庫中取得你所需要的東西:
<?php // File: /app/Http/Controllers/AnyController.php // ... public function index() { $posts = Post::published()->take(10)->get(); ????$page?=?Page::where('post_name',?'about')->first(); ????return?view('posts.index',?compact('posts',?'page')); } //?...
文章類型與自訂欄位
不知道你是否使用過高級自訂欄位功能( ACF )?在這裡你也可以得到所有的自訂欄位:
<?php $post = Post::find(1); $avatar = $post->meta->avatar; $phone?=?$post->meta->phone;
你可以建立與自訂文章類型相關(guān)的自訂模型:
<?php? use?Corcel\Post?as?Corcel; class?Service?extends?Corcel { ????protected?$postType?=?'service'; }
關(guān)於更多的功能,你可以直接在GitHub(https://github.com/corcel/corcel) 倉庫中查看。
你可以在任何 PHP 框架中使用 Corcel,甚至是像 Slim,Silex 這樣的微型框架。它可以讓你獲得所有 WordPress 管理面板數(shù)據(jù),並可以讓你使用自訂路由、控制器、模型和視圖來組織你的專案。
來給 Corcel 一個(gè)機(jī)會(huì)吧,也歡迎大家給一些建議或直接貢獻(xiàn)程式碼,謝謝!