使用 Composer 解決 Laravel 項目中的內容管理問題

在開始之前,先簡單介紹一下 exdeliver/causeway 的功能和安裝過程。exdeliver/causeway 是一個為 laravel 應用設計的內容管理系統,適用于 laravel 5.7 及以上版本。它提供了全面的內容管理功能,包括用戶管理、菜單管理、頁面管理等。此外,它還支持 mollie 支付網關的集成,這對于電商網站來說非常有用。

首先,使用 composer 安裝 exdeliver/causeway 非常簡單,只需在終端中運行以下命令:

composer require exdeliver/causeway

安裝完成后,需要進行一些配置。首先,在 app.php 文件中添加以下服務提供者和別名:

ExdeliverCausewayServiceProvidersCausewayServiceProvider::class,  'CW' => ExdeliverCausewayFacadesCausewayServiceFacade::class,  'CWCart' => ExdeliverCartFacadesCartServiceFacade::class,

接下來,需要更新 config/auth.php 文件中的用戶模型配置:

'providers' => [     'users' => [         'driver' => 'eloquent',         'model' => ExdeliverCausewayDomainEntitiesUserUser::class,     ], ]

你也可以創建自己的用戶模型,并擴展上述模型。

然后,在 .env 文件中添加以下配置:

MOLLIE_LIVE_API_KEY= MOLLIE_TEST_API_KEY=test_MeT7ZndwP8wVBkGpDSGnpAa88npKLe CAUSEWAY_VAT_PERCENTAGES='{"0.00": "0%", "9.00": "9%", "21.00": "21%"}' CAUSEWAY_COMPANY_INFORMATION='{"company": "EXdeliver", "address": "YourCompanyStreet 22", "zipcode": "0000 TT", "city": "Rotterdam", "country": "The Netherlands", "vat_no": "NL6500000", "coc_no": "20000000", "email": "info@mail.nl", "bank_account": "NL00INGB000123456", "bank_name": "ING"}'

配置完成后,運行遷移命令以創建必要的數據庫表:

php artisan migrate

接著,發布 Laravel Filemanager 的配置文件:

php artisan vendor:publish --tag=lfm_config php artisan vendor:publish --tag=lfm_public

然后,運行以下命令發布公共文件和模板:

php artisan vendor:publish --tag=public --force php artisan vendor:publish --tag=templates (--fore optional overwrites all)

最后,創建一個管理員用戶:

php artisan causeway:admin <username> <password>

如果還沒有創建存儲鏈接,請運行以下命令:

php artisan storage:link

在路由文件中添加以下路由,以便處理頁面請求:

Route::get('/{pageSlug?}', 'ExdeliverCausewayControllersPageController@getSlug');

登錄地址為:

http://yoursite.nl/causeway/login

exdeliver/causeway 還提供了一些有用的幫助函數,例如獲取菜單項和頁面:

// 返回特定菜單項 CW::getMenu('<(string)menu name>')  // 返回特定頁面 CW::getPage('<(string)page slug'>);

通過使用 Composer 安裝和配置 exdeliver/causeway,我成功地解決了內容管理的問題。這個庫不僅簡化了開發流程,還提供了豐富的功能,極大地提高了網站的管理效率。無論是頁面管理還是用戶管理,都變得更加直觀和高效。如果你也在尋找一個適合 Laravel 的內容管理解決方案,不妨試試 exdeliver/causeway。

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享