在 GitHub 上為我們加註星標——這極大地激勵了我們!
Aimeos 是專業、功能齊全、超快速的 Laravel 電子商務套件!您可以在 5 分鐘內將其安裝到現有的 Laravel 應用程式中,並且可以根據您的需求調整、擴充、覆蓋和自訂任何內容。
Aimeos 是一個功能齊全的電子商務包:
....以及更多 Aimeos 功能
支援的語言:
查看示範:
如果您想設定新應用程式或測試 Aimeos,我們推薦 Aimeos 商店發行版。它包含快速入門所需的所有內容,您將在 5 分鐘內獲得一個完全運行的線上商店:
Aimeos店分佈
如果您想自行建立單頁應用程式 (SPA) 或漸進式 Web 應用程式 (PWA) 並且不需要 Aimeos HTML 前端,那麼 Aimeos 無頭髮行版是正確的選擇:
Aimeos 無頭分送
目前,完全支援 Aimeos Laravel 軟體包2023.10 及更高版本:
如果您想在主要版本之間升級,請查看升級指南!
Aimeos 商店分銷要求:
如果缺少所需的 PHP 擴展, composer
會告訴您缺少的依賴項。
如果您想在主要版本之間升級,請查看升級指南!
確保您已提前建立資料庫並將設定新增至應用程式目錄中的.env
檔案。有時,使用 .env 檔案會出現問題,您會收到資料庫連線失敗的例外狀況。在這種情況下,請將資料庫憑證也加入到./config/shop.php 檔案的 resources/db 部分!
如果您至少沒有安裝 MySQL 5.7.8 或 MariaDB 10.2.2,您可能會收到下列錯誤
Specified key was too long; max key length is 767 bytes
若要避免此問題,請刪除新表(如果已建立),並將./config/database.php
中的字元集/排序規則設定變更為以下值,然後再次安裝 Aimeos:
' connections ' => [
' mysql ' => [
// ...
' charset ' => ' utf8 ' ,
' collation ' => ' utf8_unicode_ci ' ,
// ...
]
]
注意:也要確保您的 MySQL 伺服器預設建立InnoDB表,因為MyISAM表將無法運作並會導致外鍵約束錯誤!
如果您想使用 MySQL 以外的資料庫伺服器,請查看有關支援的資料庫伺服器及其特定配置的文章。支持的有:
確保您在.env
檔案中使用受支援的資料庫伺服器之一,例如:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=aimeos
DB_USERNAME=root
DB_PASSWORD=
注意:不支援預設配置的 SQLite 資料庫!
Aimeos Laravel 線上商店包是一個基於作曲家的庫。透過在現有 Laravel 應用程式的根目錄中使用 Composer 2.1+ 可以最簡單地安裝它:
wget https://getcomposer.org/download/latest-stable/composer.phar -O composer
然後,將這些行加入Laravel 骨架應用程式的composer.json 中:
"prefer-stable" : true ,
"minimum-stability" : " dev " ,
"require" : {
"aimeos/aimeos-laravel" : " ~2024.10 " ,
...
},
"scripts" : {
"post-update-cmd" : [
" @php artisan vendor:publish --tag=laravel-assets --ansi --force " ,
" @php artisan vendor:publish --tag=public --ansi " ,
" \ Aimeos \ Shop \ Composer::join "
],
...
}
然後,使用以下命令安裝 Aimeos 商店包
php composer update -W
在最後一步中,您現在必須執行這些 artisan 命令才能獲得工作或更新的 Aimeos 安裝:
php artisan vendor:publish --tag=config --tag=public
php artisan migrate
php artisan aimeos:setup --option=setup/default/demo:1
在生產環境中或如果您不希望安裝演示數據,請省略--option=setup/default/demo:1
選項。
您必須設定 Laravel 的身份驗證入門套件之一。 Laravel Breeze 是最簡單的一種,但您也可以使用 Jetstream。
composer require laravel/breeze
php artisan breeze:install
npm install && npm run build # if not executed automatically by the previous command
Laravel Breeze 會問你幾個問題,最重要的一個是你想要使用的堆疊類型。選擇“Blade”(這是最簡單的方法)並使用其他值的預設值。
它還將/profile
的路由添加到./routes/web.php
,這可能會覆蓋aimeos_shop_account
路由。為了避免出現缺少aimeos_shop_account
路由的異常,請將./routes/web.php
檔案中這些行的 URL 從/profile
變更為/profile/me
:
Route:: middleware ( ' auth ' )-> group ( function () {
Route:: get ( ' /profile/me ' , [ProfileController::class, ' edit ' ])-> name ( ' profile.edit ' );
Route:: patch ( ' /profile/me ' , [ProfileController::class, ' update ' ])-> name ( ' profile.update ' );
Route:: delete ( ' /profile/me ' , [ProfileController::class, ' destroy ' ])-> name ( ' profile.destroy ' );
});
如需了解更多信息,請關注 Laravel 文件:
最後一步,您需要擴充AppProvidersAppServiceProvider
類別的boot()
方法,並且新增行來定義如何在app/Providers/AppServiceProvider.php
中檢查「admin」的授權:
public function boot ()
{
// Keep the lines before
Illuminate Support Facades Gate:: define ( ' admin ' , function ( $ user , $ class , $ roles ) {
if ( isset ( $ user -> superuser ) && $ user -> superuser ) {
return true ;
}
return app ( ' AimeosShopBaseSupport ' )-> checkUserGroup ( $ user , $ roles );
});
}
在繼續之前測試您的身份驗證設定是否有效。為您的 Laravel 應用程式建立管理員帳戶,以便您能夠登入 Aimeos 管理介面:
php artisan aimeos:account --super < email >
電子郵件地址是登入使用者名,該帳號也適用於前端。為了保護新帳戶,該命令將要求您輸入密碼。相同的命令可以透過使用--admin
、 --editor
或--api
而不是--super
(存取所有內容)來建立有限帳戶。
要正確引用圖像,您必須調整.env
檔案並將APP_URL
設定為您的真實 URL,例如
APP_URL=http://127.0.0.1:8000
注意:確保 Laravel 在.env
檔案中使用file
會話驅動程式!否則,購物籃內容將無法正確儲存!
SESSION_DRIVER=file
如果您的./public
目錄無法被 Web 伺服器寫入,您必須建立以下目錄:
mkdir public/aimeos public/vendor
chmod 777 public/aimeos public/vendor
在生產環境中,您應該更具體地指定授予的權限!
然後,您應該能夠在瀏覽器中呼叫目錄清單頁面。為了快速啟動,您可以使用整合的 Web 伺服器。只需在應用程式的基目錄中執行此命令:
php artisan serve
使用以下命令將瀏覽器指向商店的清單頁面:
注意:整合 Aimeos 套件會為您的 Laravel 安裝添加一些路由,例如/shop
或/admin
,但主頁保持不變!如果您也想將 Aimeos 新增至主頁,請將./routes/web.php
中的「/」路由替換為以下行:
Route:: group ([ ' middleware ' => [ ' web ' ]], function () {
Route:: get ( ' / ' , ' AimeosShopControllerCatalogController@homeAction ' )-> name ( ' aimeos_home ' );
});
對於多供應商設置,請閱讀有關多個商店的文章。
這將在主頁上顯示 Aimeos 目錄主頁元件,您將獲得一個漂亮的商店主頁,如下所示:
如果您仍然啟動了內部 PHP Web 伺服器 ( php artisan serve
),現在您應該在瀏覽器中開啟此 URL:
http://127.0.0.1:8000/admin
輸入新建立使用者的電子郵件地址和密碼,然後按「登入」。如果您沒有重新導向到管理介面(這取決於您根據 Laravel 文件建立的身份驗證程式碼),請再次將瀏覽器指向/admin
URL。
注意:確保您尚未以非管理員使用者身分登入!在這種情況下,登入將不起作用,因為 Laravel 要求您先登出。
為了簡化開發,您應該配置為不使用內容快取。您可以在 Laravel 應用程式的config/shop.php
檔案底部新增以下行來執行此操作:
' madmin ' => [
' cache ' => [
' manager ' => [
' name ' => ' None ' ,
],
],
],
Aimeos Laravel 套件根據 MIT 許可證條款獲得許可,並且免費提供。