Η δημιουργία ενός eShop με Laravel είναι μια εξαιρετική επιλογή για όσους αναζητούν ευελιξία, ασφάλεια και ταχύτητα. Το Laravel είναι ένα από τα πιο σύγχρονα PHP frameworks και προσφέρει ό,τι χρειάζεσαι για να δημιουργήσεις ένα ισχυρό ηλεκτρονικό κατάστημα.
Contents
1. Γιατί να επιλέξεις Laravel για eShop;2. Εγκατάσταση και αρχική ρύθμισηΒήμα 1: Δημιουργία του projectΒήμα 2: Ρύθμιση σύνδεσης με βάση δεδομένων (.env)3. Βασικά χαρακτηριστικά ενός eShop4. Δημιουργία μοντέλων (models)5. Προβολή προϊόντων στο frontendΔημιουργία controller:6. Καλάθι αγορών (Cart)Αποθήκευση σε session:7. Checkout και δημιουργία παραγγελίας8. Σύστημα χρηστών (Authentication)9. Πίνακας διαχείρισης (Admin Panel)Δημοφιλείς επιλογές:10. Ενσωμάτωση πληρωμών (Stripe παράδειγμα)ΣυμπέρασμαExtra Tips
1. Γιατί να επιλέξεις Laravel για eShop;
- Έχει ισχυρό routing system και middleware.
- Διαθέτει το Eloquent ORM για εύκολη διαχείριση προϊόντων, χρηστών και παραγγελιών.
- Υποστηρίζει ενσωμάτωση με Stripe, PayPal και άλλες πλατφόρμες πληρωμών.
- Είναι επεκτάσιμο και ιδανικό για μεγάλες εφαρμογές.
2. Εγκατάσταση και αρχική ρύθμιση
Βήμα 1: Δημιουργία του project
composer create-project laravel/laravel laravel-eshop
cd laravel-eshop
Βήμα 2: Ρύθμιση σύνδεσης με βάση δεδομένων (.env)
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=eshop
DB_USERNAME=root
DB_PASSWORD=secret
php artisan migrate
3. Βασικά χαρακτηριστικά ενός eShop
- Σελίδα προβολής προϊόντων
- Λεπτομέρειες προϊόντος
- Καλάθι αγορών
- Checkout (πληρωμή)
- Εγγραφή / Σύνδεση χρηστών
- Πίνακας διαχείρισης (Admin Panel)
4. Δημιουργία μοντέλων (models)
php artisan make:model Product -m
php artisan make:model Order -m
php artisan make:model OrderItem -m
Παράδειγμα migration για προϊόντα:
Schema::create('products', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->text('description');
$table->decimal('price', 8, 2);
$table->integer('stock');
$table->string('slug')->unique();
$table->timestamps();
});
5. Προβολή προϊόντων στο frontend
Δημιουργία controller:
php artisan make:controller ProductController
Παράδειγμα κώδικα:
public function index() {
$products = Product::where('stock', '>', 0)->get();
return view('products.index', compact('products'));
}
public function show($slug) {
$product = Product::where('slug', $slug)->firstOrFail();
return view('products.show', compact('product'));
}
6. Καλάθι αγορών (Cart)
Αποθήκευση σε session:
Session::put('cart', [...]);
ή χρήση έτοιμου πακέτου:
composer require bumbummen99/shoppingcart
7. Checkout και δημιουργία παραγγελίας
php artisan make:controller OrderController
Παράδειγμα αποθήκευσης παραγγελίας:
public function store(Request $request) {
$order = Order::create([...]);
foreach (Cart::content() as $item) {
OrderItem::create([...]);
}
Cart::destroy();
return redirect()->route('thank-you');
}
8. Σύστημα χρηστών (Authentication)
composer require laravel/breeze --dev
php artisan breeze:install
npm install && npm run dev
php artisan migrate
9. Πίνακας διαχείρισης (Admin Panel)
Δημοφιλείς επιλογές:
- Filament Admin – μοντέρνο και ευέλικτο
- Voyager – εύκολο στην εγκατάσταση
- Larkon – premium Laravel admin template για eshop
10. Ενσωμάτωση πληρωμών (Stripe παράδειγμα)
composer require stripe/stripe-php
\Stripe\Stripe::setApiKey(config('services.stripe.secret'));
Και χρήση JavaScript στο frontend για να ολοκληρωθεί η πληρωμή.
Συμπέρασμα
Το Laravel σου επιτρέπει να δημιουργήσεις ένα πλήρως λειτουργικό, μοντέρνο και ασφαλές ηλεκτρονικό κατάστημα. Δεν εξαρτάσαι από CMS τύπου WooCommerce ή OpenCart και μπορείς να προσαρμόσεις κάθε στοιχείο στις ανάγκες σου.
Extra Tips
- Πρόσθεσε SEO friendly URLs & meta tags
- Ενσωμάτωσε Livewire για πιο διαδραστικό frontend
- Στείλε ειδοποιήσεις με email ή SMS για νέες παραγγελίες
- Δημιούργησε REST API για mobile εφαρμογές