_____ _____ ___ _ _ _____
/ ____| __ \ |__ \| || | |___ |
| | __| |__) | ) | || |_ / /
| | |_ | ___/ / /|__ _| / /
| |__| | | / /_ | | / /
\_____|_| |____| |_| /_/
🌐 Ngôn ngữ: 🇻🇳 Tiếng Việt (hiện tại) · 🇬🇧 English
Cài đặt core (khi đã có laravel):
composer require gp247/core
Trang chủ | Tài liệu chính thức | Skill agent chính thức | Fanpage chính thức
Giới thiệu về GP247
GP247 là một hệ thống mã nguồn mở mạnh mẽ, an toàn, linh hoạt, thân thiện với AI agent, được xây dựng trên nền tảng Laravel.
Các thành phần chính trong hệ sinh thái của GP247:
- [Package] GP247/core: Là core của toàn bộ hệ sinh thái. GP247/core có thể hoạt động độc lập như 1 laravel admin.
- [Package] GP247/front: Gói cung cấp các chức năng cơ bản cho một cms của doanh nghiệp.
- [Package] GP247/shop: Cung cấp đầy đủ chức năng của một website bán hàng.
[Project] S-Cart = GP247/core + GP247/front + GP247/shop
Core Laravel:
GP247 2.x
Core laravel framework 13.x
Cấu trúc website sử dụng GP247
Website-folder/
|
├── app
│ └── GP247
│ ├── Core(+) //Tùy chỉnh controller của Core
│ ├── Helpers(+) //Tự động tải Helpers/*.php
│ ├── Plugins(+) //Sử dụng `php artisan gp247:make-plugin --name=TenPlugin`
//(NẾU bạn đã cài đặt gp247/front)//
│ ├── Front(+) //Tùy chỉnh controller của Front
//(NẾU bạn đã cài đặt gp247/shop)//
│ ├── Shop(+) //Tùy chỉnh controller của Shop
│ └── Templates(+) //Sử dụng `php artisan gp247:make-template --name=TenTemplate`
├── public
│ └── GP247
│ ├── Core(+)
│ ├── Plugins(+)
//(NẾU bạn đã cài đặt gp247/front)//
│ └── Templates(+)
├── resources
│ └── views/vendor
│ |── gp247-admin(+) //Tùy chỉnh view core
│ |── gp247-front-admin(+) //(NẾU bạn đã cài đặt gp247/front)//
│ └── gp247-shop-admin(+) //(NẾU bạn đã cài đặt gp247/shop)//
├── vendor
│ ├── gp247/core
│ ├── gp247/front
│ └── gp247/shop
├── .env
│ └── GP247_ACTIVE=1 //BẬT|TẮT gp247
└──...
Hướng dẫn cài đặt nhanh
-
Bước 1: Chuẩn bị source Laravel
Tham khảo lệnh:
composer create-project laravel/laravel website-folder -
Bước 2: Cài đặt gói gp247/core
Di chuyển vào thư mục Laravel (trong ví dụ này là
website-folder), và chạy lệnh:composer require gp247/core -
Bước 3: Kiểm tra cấu hình trong file .env
Đảm bảo thông tin cấu hình database và APP_KEY trong file .env đã đầy đủ.
Nếu APP_KEY chưa được thiết lập, sử dụng lệnh sau để tạo:
php artisan key:generate -
Bước 4: Cấu hình database
Mặc định, GP247 sử dụng mysql. Cấu hình sẽ được lưu trong file .env như sau:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=gp247
DB_USERNAME=root
DB_PASSWORD=
Nếu bạn muốn sử dụng sqlite để kiểm tra nhanh, vui lòng thay đổi connection trong file .env thành sqlite, và comment các dòng DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD.
DB_CONNECTION=sqlite
#DB_HOST=127.0.0.1
#DB_PORT=3306
#DB_DATABASE=gp247
#DB_USERNAME=root
#DB_PASSWORD=
-
Bước 5: Khởi tạo gp247
Chạy lệnh:
php artisan gp247:core-install -
Bước 6: Thêm xử lý lỗi
Để thêm xử lý lỗi tùy chỉnh cho ứng dụng của bạn, hãy mở file
bootstrap/app.phpvà thêm đoạn mã sau vào hàmwithExceptions:// GP247 add new $exceptions->report(function (\Throwable $e) { try { if (function_exists('gp247_handle_exception')) { gp247_handle_exception($e); } } catch (\Throwable $inner) { \Log::error($e->getMessage(), ['exception' => $e]); } });Đoạn mã này sẽ giúp bạn xử lý các ngoại lệ thông qua hàm
gp247_handle_exceptionnếu hàm này tồn tại.
Thông tin hữu ích:
Để xem phiên bản GP247
php artisan gp247:core-info
Cập nhật gp247
Cập nhật gói bằng lệnh:
composer update gp247/core
Sau đó, chạy lệnh:
php artisan gp247:core-update
Tùy chọn — cập nhật lại asset/view đã publish lên bản mới nhất.
composer update chỉ cập nhật package trong vendor/; các file đã publish ra
public/GP247 và resources/views/vendor/gp247-admin không tự động được ghi
đè. Nếu bản phát hành mới có thay đổi CSS/JS đã build sẵn hoặc view admin và bạn
muốn áp dụng lên site, hãy publish lại kèm --force:
php artisan vendor:publish --tag=gp247:core-public --force// -> public/GP247 (build admin: CSS/JS, ...)
php artisan vendor:publish --tag=gp247:core-view --force// -> resources/views/vendor/gp247-admin
NẾU bạn đã cài đặt gp247/front, publish lại thêm asset/view của front:
php artisan vendor:publish --tag=gp247:front-public --force// -> public/GP247/Templates/GP247Front (CSS/JS storefront)
php artisan vendor:publish --tag=gp247:front-view --force// -> app/GP247/Templates/GP247Front (view template mặc định)
⚠️
--forcesẽ ghi đè các file ở thư mục đích, bao gồm cả những tùy chỉnh cục bộ đã sửa ở đó. Hãy backuppublic/GP247và thư mục view đã publish trước, và chỉ publish đúng tag bạn thực sự cần.
Để tạo plugin:
php artisan gp247:make-plugin --name=TenPlugin
Để tạo file zip plugin
php artisan gp247:make-plugin --name=TenPlugin --download=1
Để tạo template (NẾU bạn đã cài đặt gp247/front):
php artisan gp247:make-template --name=TenTemplate
Để tạo file zip template:
php artisan gp247:make-template --name=TenTemplate --download=1
Tùy chỉnh
Tùy chỉnh cấu hình lfm dành cho upload
php artisan vendor:publish --tag=config-lfm
Tùy chỉnh view của core admin
php artisan vendor:publish --tag=gp247:core-view// -> views/vendor/gp247-admin
Ghi đè các hàm helper gp247_*
Bước 1: Thêm danh sách các hàm muốn ghi đè vào
config/gp247_functions_except.php
Bước 2: Tạo các file php chứa các hàm mới trong thư mục
app/GP247/Helpers, ví dụapp/GP247/Helpers/myfunction.php
Ghi đè các file controller gp247
Bước 1: Copy các file controller muốn ghi đè trong vendor/gp247/core/src/Core/Controllers -> app/GP247/Core/Controllers
Bước 2: Thay đổi
namespace GP247\Core\Controllersthànhnamespace App\GP247\Core\Controllers
Ghi đè các file controller API gp247
Bước 1: Copy các file controller muốn ghi đè trong vendor/gp247/core/src/Api/Controllers -> app/GP247/Core/Api/Controllers
Bước 2: Thay đổi
namespace GP247\Core\Api\Controllersthànhnamespace App\GP247\Core\Api\Controllers
Thêm route
Sử dụng các hằng số prefix và middleware GP247_ADMIN_PREFIX, GP247_ADMIN_MIDDLEWARE trong khai báo route.
Tham khảo: https://github.com/gp247net/core/blob/master/src/routes.php
Các biến môi trường trong file .env
Nhanh chóng tắt GP247 và plugins
GP247_ACTIVE=1// Để tắt, đặt giá trị 0
Tắt APIs
GP247_API_MODE=1// Để tắt, đặt giá trị 0
Tiền tố bảng dữ liệu
GP247_DB_PREFIX=gp247_//Không thể thay đổi sau khi cài đặt gp247
Tiền tố đường dẫn đến admin
GP247_ADMIN_PREFIX=gp247_admin