 Bookmarks
|
|
 Suche
|
|
 Login
|
|
|
|
 Kategorien
|
|
|
 RSS-Feed
|
|
In meinem Blog dreht sich alles um Shopware, PHP Symfony und modernes E-Commerce. Als erfahrener Shopware Freelancer teile ich praxisnahe Tipps, technische Anleitungen und aktuelle Trends. Ich zeige, wie Shopbetreiber mit individuellen Anpassungen, Optimierungen und neuen Technologien das Beste aus ihrem Online-Shop herausholen können.
|
php freelancer shopware symfony
|
Hinzugefügt am 28.04.2025 - 20:53:25
|
|
https://stefanpilz.ltd/blog
|
|
;
|
|
 RSS-Feed - Einträge
|
|
|
|
Ab dem 24. März 2025 gelten neue Allgemeine Geschäftsbedingungen bei Shopware. Besonders für Nutzer der kostenlosen Shopware 6 Community Edition bringt die neue Fair Usage Policy wichtige Änderungen mit sich. In diesem Beitrag erfährst du, was sich ändert – und was du jetzt als Shopbetreiber beachten solltest.
|
24.03.2025 - 19:29:30
|
https://stefanpilz.ltd/blog/56-shopware/200-shopware-fair-usage-policy
|
|
|
|
Warum sind Unit Tests in Shopware wichtig?
Unit Tests helfen, Fehler frühzeitig zu erkennen und sorgen für eine stabilere Codebasis. Besonders bei Shopware-Plugins ist es wichtig, dass Funktionen zuverlässig arbeiten, um Probleme im Live-Betrieb zu vermeiden.
Was ist ein Unit Test?
Ein Unit Test überprüft eine einzelne Funktion oder Methode auf ihre Korrektheit, ohne Abhängigkeiten wie Datenbanken oder APIs.
Voraussetzungen für Unit Tests in Shopware
? Installiertes PHPUnit (ab Version 9.x für PHP 8.3)
? Shopware 6 Development-Umgebung mit Composer
? Autoloading für Testklassen aktiviert (composer dump-autoload)
Ein einfacher Unit Test mit PHPUnit
Beispiel: Ein einfacher Test für eine Calculator-Klasse.
namespace MyPluginTests;
use PHPUnitFrameworkTestCase;
use MyPluginServiceCalculator;
class CalculatorTest extends TestCase {
public function testAddition() {
$calc = new Calculator();
$this->assertEquals(5, $calc->add(2, 3));
}
}
Unit Testing in Shopware: Ein Service testen
Shopware nutzt Dependency Injection – das bedeutet, dass wir Services isoliert testen können:
namespace MyPluginTests;
use PHPUnitFrameworkTestCase;
use MyPluginServiceProductService;
use ShopwareCoreFrameworkContext;
class ProductServiceTest extends TestCase {
public function testGetProductName() {
$service = new ProductService();
$this->assertEquals('Produkt 1', $service->getProductName(1));
}
}
Mocking von Shopware-Abhängigkeiten
Mit Mockery oder PHPUnit-Mocks können wir Shopware-Core-Klassen nachbilden:
$repoMock = $this->createMock(ProductRepository::class);
$repoMock->method('find')->willReturn(new Product('Testprodukt'));
Fazit
Unit Testing hilft, Bugs frühzeitig zu erkennen und erhöht die Stabilität von Shopware-Plugins. Besonders bei größeren Projekten ist es eine unverzichtbare Praxis.
Brauchst du Unterstützung bei Unit Tests für dein Shopware-Plugin? Kontaktiere mich – ich helfe dir gerne weiter!
|
26.02.2025 - 14:49:25
|
https://stefanpilz.ltd/blog/52-php/194-unit-testing-in-php-wie-du-deine-shopware ...
|
|
|
|
Was ist Dependency Injection (DI)?
Dependency Injection (DI) ist ein Design-Pattern, das hilft, Abhängigkeiten in einem System zu verwalten. Statt dass eine Klasse ihre Abhängigkeiten selbst erstellt, werden sie von außen übergeben.
Warum ist Dependency Injection wichtig?
? Lose Kopplung: Module sind flexibler und wiederverwendbar
? Bessere Testbarkeit: Mocking von Services für Unit-Tests
? Einfachere Wartung: Änderungen an Abhängigkeiten betreffen nicht den Code in vielen Klassen
Dependency Injection in Shopware 6
Shopware 6 nutzt das Symfony Dependency Injection Container. Das bedeutet, dass alle Services in einer zentralen Konfigurationsdatei definiert werden.
Beispiel: Ein eigener Shopware-Service mit DI
Erstellen wir einen ProductService, der Produktinformationen bereitstellt:
namespace MyPluginService;
class ProductService {
public function getProductName(int $id): string {
return "Produkt " . $id;
}
}
Den Service in einem Controller verwenden
Dank Dependency Injection können wir den Service einfach in einen Controller einfügen:
namespace MyPluginController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use MyPluginServiceProductService;
class ProductController extends AbstractController {
private ProductService $productService;
public function __construct(ProductService $productService) {
$this->productService = $productService;
}
public function showProduct(int $id) {
return $this->json(['name' => $this->productService->getProductName($id)]);
}
}
Fazit
Dependency Injection sorgt für sauberen, flexiblen und testbaren Code. Da Shopware 6 auf Symfony basiert, ist die Nutzung des DI-Containers die beste Möglichkeit, Code effizient zu strukturieren.
Möchtest du deine Shopware-Projekte mit Dependency Injection optimieren? Kontaktiere mich – ich unterstütze dich gerne!
|
26.02.2025 - 14:41:31
|
https://stefanpilz.ltd/blog/52-php/192-dependency-injection-in-php-warum-und-wie ...
|
|
|
|
Warum ist PHP-Optimierung so wichtig?
Langsame PHP-Skripte können zu hohen Ladezeiten und schlechten Nutzererfahrungen führen. Eine optimierte PHP-Umgebung verbessert nicht nur die Performance deines Shops, sondern senkt auch die Serverlast.
1. OPcache aktivieren
OPcache speichert vorkompilierte PHP-Skripte im Speicher und reduziert die Ausführungszeit.
? Aktivierung in der php.ini:
opcache.enable=1
opcache.memory_consumption=256
opcache.max_accelerated_files=20000
opcache.validate_timestamps=0
2. Datenbankabfragen optimieren
Verwende Prepared Statements für schnellere und sicherere SQL-Abfragen:
$stmt = $pdo->prepare("SELECT * FROM products WHERE id = :id");
$stmt->execute(['id' => $productId]);
$product = $stmt->fetch();
3. Unnötige Schleifen vermeiden
Große Schleifen können die Performance beeinträchtigen. Nutze effiziente Funktionen wie array_map() statt foreach:
$newArray = array_map(fn($item) => $item * 2, $oldArray);
4. Caching nutzen (Redis, Memcached)
Redis oder Memcached verringert die Last auf die Datenbank und beschleunigt Anfragen:
$redis->set('cache_key', json_encode($data), 3600);
5. PHP-Profiler verwenden
Mit Tools wie Xdebug oder Blackfire kannst du Engpässe identifizieren:
php -dxdebug.profiler_enable=1 script.php
Fazit
Durch die Kombination von OPcache, optimierten SQL-Abfragen, effizientem Code und Caching kannst du die PHP-Performance erheblich verbessern.
Brauchst du Hilfe bei der PHP-Optimierung für Shopware? Kontaktiere mich – ich unterstütze dich gerne!
|
26.02.2025 - 13:07:13
|
https://stefanpilz.ltd/blog/52-php/190-php-performance-tuning-so-machst-du-deine ...
|
|
|
|
Warum setzt Shopware 6 auf OOP?
Shopware 6 basiert auf dem Symfony-Framework, das vollständig objektorientiert ist. Das bedeutet, dass Entwickler, die mit Shopware arbeiten, objektorientierte Programmierung (OOP) beherrschen sollten, um Module, Plugins und Erweiterungen effizient zu entwickeln.
Was ist objektorientierte Programmierung (OOP)?
OOP ermöglicht eine strukturierte, wiederverwendbare und skalierbare Code-Architektur. Die wichtigsten Konzepte sind:
? Klassen & Objekte: Erstellen von wiederverwendbaren Code-Strukturen
? Vererbung: Wiederverwendung und Erweiterung bestehender Klassen
? Polymorphismus: Flexible Implementierung unterschiedlicher Methoden
? Encapsulation: Schutz der Daten durch Zugriffsbeschränkungen
Beispiel: Eine einfache Shopware Service-Klasse mit OOP
In Shopware 6 kannst du eigene Services mit Dependency Injection erstellen:
namespace MyPluginService;
class ProductService {
public function getProductName(int $id): string {
return "Produkt " . $id;
}
}
Dependency Injection in Shopware 6
Shopware nutzt das Symfony DI-System für lose gekoppelte Services:
namespace MyPluginController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use MyPluginServiceProductService;
class ProductController extends AbstractController {
private ProductService $productService;
public function __construct(ProductService $productService) {
$this->productService = $productService;
}
public function showProduct(int $id) {
return $this->json(['name' => $this->productService->getProductName($id)]);
}
}
Fazit
OOP ist essenziell für die Entwicklung mit Shopware 6. Durch den Einsatz von Klassen, Vererbung und Dependency Injection kannst du sauberen, wartbaren und skalierbaren Code schreiben.
Benötigst du Hilfe bei der Shopware-Entwicklung mit OOP? Kontaktiere mich – ich unterstütze dich gerne!
|
26.02.2025 - 13:02:38
|
https://stefanpilz.ltd/blog/52-php/188-object-oriented-php-warum-oop-fuer-shopwa ...
|
|
|
|
Warum ist PHP 8.3 für Shopware 6 relevant?
Shopware setzt auf moderne PHP-Versionen, um maximale Performance und Sicherheit zu gewährleisten. Mit PHP 8.3 bringt das Upgrade nicht nur höhere Geschwindigkeit, sondern auch neue Features, die die Entwicklung vereinfachen.
Welche Shopware-Versionen unterstützen PHP 8.3?
Shopware 6.6 und höher: Voll kompatibel mit PHP 8.3
Ältere Versionen: PHP 8.3 wird möglicherweise nicht unterstützt – ein Update ist empfehlenswert
Die wichtigsten Neuerungen in PHP 8.3
? Readonly-Klassen
Readonly-Klassen sorgen dafür, dass alle Eigenschaften automatisch als readonly deklariert sind. Das verbessert die Sicherheit und Performance.
readonly class Product {
public function __construct(
public string $name,
public float $price
) {}
}
? Typed Class Constants
PHP 8.3 erlaubt nun explizite Typangaben für Klassenkonstanten:
class Order {
public const int MAX_ITEMS = 100;
}
? JSON Validation mit json_validate()
Validierung von JSON-Daten ohne sie vollständig zu dekodieren:
if (json_validate($jsonString)) {
echo "Gültiges JSON!";
}
Performance-Vorteile von PHP 8.3 für Shopware
? Bessere OPcache-Optimierungen für schnellere Seitenladezeiten
? Verbesserte JIT-Engine für performante Berechnungen
? Weniger Speicherverbrauch durch effizientere Garbage Collection
Wie du Shopware auf PHP 8.3 aktualisierst
Überprüfe die PHP-Version deines Servers mit php -v
Stelle sicher, dass deine Shopware-Version mindestens 6.6 ist
Aktualisiere PHP über deinen Server oder Hoster
Teste die Kompatibilität mit composer update und dem Shopware Systemcheck
Aktualisiere deine Plugins auf PHP 8.3-kompatible Versionen
Fazit
PHP 8.3 bringt mehr Performance, bessere Typisierung und neue Features, die Shopware schneller und stabiler machen. Falls dein Shop noch nicht auf PHP 8.3 läuft, ist jetzt der perfekte Zeitpunkt für ein Upgrade!
Du brauchst Hilfe beim PHP 8.3-Upgrade für Shopware? Kontaktiere mich – ich helfe dir gerne weiter!
? Was bringt das Upgrade auf PHP 8.3 für Shopware?
? Mehr Performance durch optimierte OPcache & JIT? Neue Features wie Readonly-Klassen & JSON-Validierung? Bessere Skalierbarkeit & Stabilität für große Shops
|
26.02.2025 - 12:54:21
|
https://stefanpilz.ltd/blog/52-php/186-php-8-3-und-shopware-welche-vorteile-brin ...
|
|
|
|
Datenbank-Optimierung für Shopware 6: So machst du deinen Shop schneller!
Warum ist die Datenbank-Optimierung für Shopware 6 wichtig?
Die Datenbank ist das Herzstück deines Shopware-Shops. Ohne eine optimierte Datenbank können Ladezeiten steigen, Suchabfragen langsam werden und Bestellungen verzögert verarbeitet werden.
1. Indexierung für schnellere Abfragen
Verwende Indizes, um Produkt- und Bestellabfragen zu beschleunigen:
SHOW INDEX FROM product;
Falls keine Indexe vorhanden sind, kannst du sie hinzufügen:
ALTER TABLE product ADD INDEX idx_name (name);
2. Caching aktivieren
Aktiviere Redis oder Memcached in der .env-Datei:
SHOPWARE_HTTP_CACHE_ENABLED=1
SHOPWARE_CACHING_REDIS_ENABLED=1
REDIS_HOST=localhost
REDIS_PORT=6379
3. Optimierung von MySQL/MariaDB-Parametern
Passe die Konfigurationsdatei my.cnf an:
innodb_buffer_pool_size = 2G
max_connections = 500
4. Langsame SQL-Abfragen identifizieren
Nutze das Slow Query Log in MySQL:
slow_query_log = 1
long_query_time = 1
Fazit
Mit diesen Optimierungen läuft deine Shopware-Datenbank stabiler und schneller. Falls du Unterstützung bei der Umsetzung benötigst, melde dich bei mir!
|
26.02.2025 - 12:22:55
|
https://stefanpilz.ltd/blog/54-datenbanken/184-datenbank-optimierung-fuer-shopwa ...
|
|
|
|
Die Wahl der richtigen Datenbank beeinflusst die Performance und Stabilität deines Shopware-Shops erheblich. Doch soll man sich für MySQL oder MariaDB entscheiden? Beide Datenbanken sind mit Shopware kompatibel – aber es gibt wichtige Unterschiede.
In diesem Artikel vergleichen wir:? Leistung & Performance? Skalierbarkeit & Zukunftssicherheit? Kompatibilität & Support? Sicherheits- & Wartungsaspekte
1. Was sind MySQL und MariaDB?
? MySQL:MySQL ist eine der weltweit bekanntesten relationalen Datenbanken und wird von Oracle entwickelt. Es ist stabil, weit verbreitet und wird von vielen Hosting-Anbietern als Standard genutzt.
? MariaDB:MariaDB ist eine Open-Source-Abspaltung von MySQL, entwickelt von den ursprünglichen MySQL-Entwicklern. Es ist kompatibel mit MySQL, bietet aber einige zusätzliche Features und Performance-Verbesserungen.
Shopware unterstützt beide Datenbanken – aber welche ist die bessere Wahl?
2. Performance-Vergleich: MySQL vs. MariaDB
? MariaDB bietet oft bessere Performance bei komplexen Abfragen, insbesondere in großen Shops mit vielen gleichzeitigen Zugriffen.? MySQL punktet mit stabilen und langfristigen Updates, da es von Oracle professionell weiterentwickelt wird.
? Ergebnis: MariaDB kann in einigen Szenarien schneller sein, aber MySQL ist stabiler und wird häufiger von Hosting-Anbietern optimiert.
3. Skalierbarkeit & Zukunftssicherheit
? MariaDB setzt auf offene Entwicklung & Community-Support, sodass neue Funktionen schneller eingeführt werden.? MySQL wird von Oracle weiterentwickelt & langfristig gewartet, wodurch größere Unternehmen oft darauf setzen.
? Fazit: MariaDB eignet sich für Entwickler & schnell skalierende Shops, während MySQL eine bewährte, stabile Lösung für langfristige Projekte ist.
4. Kompatibilität & Support für Shopware
? Nicht alle MySQL- oder MariaDB-Versionen sind mit Shopware kompatibel!? MySQL 8.0 oder höher ist erforderlich (aber nicht 8.0.20 & 8.0.21).? MariaDB 10.11 oder höher wird unterstützt (aber nicht 10.11.5 & 11.0.3).
? Beide Datenbanken funktionieren mit Shopware – entscheidend ist die richtige Version!
5. Sicherheit & Wartung
? MySQL bietet langfristigen Support durch Oracle, was für viele Unternehmen ein Vorteil ist.? MariaDB hat eine transparente, offene Entwicklung, bei der Sicherheitsupdates oft schneller veröffentlicht werden.
? Tipp: Beide Systeme sind sicher – wichtig ist eine regelmäßige Wartung und ein sicheres Hosting.
Fazit: Welche Datenbank solltest du für Shopware nutzen?
? Nutze MySQL, wenn du eine bewährte, stabile Lösung bevorzugst, die weit verbreitet ist.? Nutze MariaDB, wenn du maximale Performance & eine offene Entwicklung möchtest.
? Brauchst du Hilfe bei der Wahl der richtigen Datenbank für Shopware? Melde dich bei mir – ich berate dich gerne!
|
26.02.2025 - 11:57:21
|
https://stefanpilz.ltd/blog/54-datenbanken/182-mysql-vs-mariadb-fuer-shopware-we ...
|
|
|
|
|
|
|
|
|
© 2009-2025 RSSads.de - Alle Rechte vorbehalten. RSS Portal zum Speichern, Eintragen und Lesen von RSS-Feeds
 Neue RSS-Feeds
|
In meinem Blog dreht sich alles um Shopware, PHP Symfony und modernes E-Commerce. Als erfahrener Shopware Freelancer teile ich praxisnahe Tipps, technische Anleitungen und aktuelle Trends. Ich zeige, wie Shopbetreiber mit individuellen Anpassungen, Optimierungen und neuen Technologien das Beste aus ihrem Online-Shop herausholen können.
|
php freelancer shopware symfony
|
Hinzugefügt am 28.04.2025 - 20:53:25
|
|
|
|
|
|
myITplace ist Ihre eCommerce Agentur, die sich auf die schnelle und zuverlässige Umsetzung von Projekten im B2B- und B2C-Bereich spezialisiert hat. Mit unserem erfahrenen Team unterstützen wir Sie dabei, Ihre digitalen Geschäftsideen effizient und erfolgreich zu realisieren.
|
ecommerce onlineshops ecommerce-agentur oxid
|
Hinzugefügt am 27.01.2025 - 08:29:22
|
|
|
|
|
|
Die Redaktion des Nürnberg Kurier besteht aus einem engagierten Team leidenschaftlicher Autoren, die es sich zur Aufgabe gemacht haben, spannende und informative Inhalte rund um Nürnberg und seine Umgebung zu veröffentlichen.
|
nachrichten nachrichten-service regionale-nachrichten
|
Hinzugefügt am 27.01.2025 - 08:27:36
|
|
|
|
|
|
ab2go.de ist ein informativer Gesundheitsblog rund um die Themen Tierbedarf, Rezepte, Ernährung, Rosacea, Sport und vieles mehr! Wir bieten wertvolle Tipps, praktische Anleitungen und aktuelle Informationen, um Euch in allen Lebensbereichen zu unterstützen.
|
katzenfutter gesundheitsblog ernährung gesunde-rezepte low-carb
|
Hinzugefügt am 27.01.2025 - 08:25:42
|
|
|
|
|
|
Geldwiki bietet umfassende Informationen und aktuelle Jobangebote im Finanzbereich, speziell für Banking, Versicherungen und Controlling. Ideal für Berufseinsteiger, Fachkräfte und Studenten, die eine Karriere im Finanzsektor planen.
|
karriere versicherungen finanzjobs banking controlling
|
Hinzugefügt am 11.01.2025 - 12:16:33
|
|
|
|
|
|
Willkommen im RSS-Feed von Informatik-Ninja - Deiner Anlaufstelle in die Welt der Informatik! Hier findest du alles, was du brauchst, um deine Reise in die Welt der Informatik und Software-Entwicklung zu beginnen oder fortzusetzen. Unsere praxisnahen Tutorials, tiefgehenden Artikel und herausfordernden Projekte sind darauf ausgelegt, dir nicht nur theoretisches Wissen zu vermitteln, sondern auch praktische Fähigkeiten an die Hand zu geben.
|
php software web programmieren informatik
|
Hinzugefügt am 09.11.2024 - 20:59:48
|
|
|
|
|
|
Softwarekauf einfach, schnell und sicher. Bei uns können Sie Ihre passende Software aussuchen, bestellen und Sofort-Download per E-Mail erhalten, wie Office 2024 und Microsoft 365, welches die neuesten Versionen der Microsoft-Produkte für die Arbeit und Privat sind.
|
word excel powerpoint outlook access
|
Hinzugefügt am 06.11.2024 - 10:51:25
|
|
|
|
|
|
|